ในตัวอย่างนี้ฉันสร้าง a user
โดยไม่มีprofile
จากนั้นสร้าง a 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 หรือไม่?