В этом примере я создаю user без profile, а затем создаю profile для этого пользователя. Я попытался использовать сборку с ассоциацией has_one, но это взорвалось. Единственный способ, с помощью которого я вижу эту работу, - использовать has_many. Предполагается, что user имеет не более одного profile.
Я пытался это сделать. У меня есть:
class User < ActiveRecord::Base
has_one :profile
end
class Profile < ActiveRecord::Base
belongs_to :user
end
Но когда я это делаю:
user.build_profile
Я получаю сообщение об ошибке:
ActiveRecord::StatementInvalid: Mysql::Error: Unknown column 'profiles.user_id' in 'where clause': SELECT * FROM `profiles` WHERE (`profiles`.user_id = 4) LIMIT 1
Есть ли способ в рельсах иметь 0 или 1 ассоциацию?