Trong ví dụ này, tôi tạo một userkhông có profile, sau đó tạo một profilecho người dùng đó. Tôi đã thử sử dụng xây dựng với một has_onehiệp hội nhưng điều đó đã nổ tung. Cách duy nhất tôi thấy làm việc này là sử dụng has_many. Điều userđược cho là chỉ có nhiều nhất là một profile.
Tôi đã cố gắng này. Tôi có:
class User < ActiveRecord::Base
has_one :profile
end
class Profile < ActiveRecord::Base
belongs_to :user
end
Nhưng khi tôi làm:
user.build_profile
Tôi nhận được lỗi:
ActiveRecord::StatementInvalid: Mysql::Error: Unknown column 'profiles.user_id' in 'where clause': SELECT * FROM `profiles` WHERE (`profiles`.user_id = 4) LIMIT 1
Có cách nào trong đường ray để có 0 hoặc 1 liên kết không?