Dans cet exemple, je crée un user
avec non profile
, puis je crée plus tard un profile
pour cet utilisateur. J'ai essayé d'utiliser build avec une has_one
association mais ça a explosé. La seule façon dont je vois ce fonctionnement est d'utiliser has_many
. Le user
est censé n'en avoir au plus qu'un profile
.
J'ai essayé ceci. J'ai:
class User < ActiveRecord::Base
has_one :profile
end
class Profile < ActiveRecord::Base
belongs_to :user
end
Mais quand je fais:
user.build_profile
J'obtiens l'erreur:
ActiveRecord::StatementInvalid: Mysql::Error: Unknown column 'profiles.user_id' in 'where clause': SELECT * FROM `profiles` WHERE (`profiles`.user_id = 4) LIMIT 1
Y a-t-il un moyen dans les rails d'avoir 0 ou 1 association?