この例では、userをno profileで作成し、後でprofileそのユーザーのを作成します。has_oneアソシエーションでビルドを使用しようとしましたが、失敗しました。これが機能しているのを見る唯一の方法は、を使用することhas_manyです。userだけ多くても1つで持っていることになっています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の関連付けを行う方法はありますか?