В моей app
У меня есть две модели USER и ПРОФИЛЬ, я хочу, чтобы каждый пользователь должен иметь только один профиль, я попытался has_one :profile
ассоциацию, но это не похоже на работу так, как я хочу.Как остановить пользователя от создания нескольких профилей?
Моя модель пользователя
class User < ActiveRecord::Base
has_one :profile
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.provider = auth.provider
user.uid = auth.uid
user.name = auth.info.name
user.email = auth.info.email
user.image = auth.info.image
user.oauth_token = auth.credentials.token
user.oauth_expires_at = Time.at(auth.credentials.expires_at)
user.save!
end
end
end
Мой профиль Модель
class Profile < ApplicationRecord
belongs_to :user
end
В каком виде вы хотите? –
yo может отключить форму создания профиля, если у пользователя уже есть профиль или вы можете проверить, существует ли профиль пользователя для создания профиля. – inye
Как ваши пользователи создают профиль? Если он проходит через форму, я бы отключил или не показывал форму, если пользователь уже имеет один профиль. –