abelongs_to和 a 和有什么不一样has_one?
belongs_to
has_one
阅读 Ruby on Rails 指南对我没有帮助。
他们基本上做同样的事情,唯一的区别是你在关系的哪一边。如果 aUser有 a Profile,那么在User你拥有has_one :profile的班级和你拥有的Profile班级中belongs_to :user。要确定谁“拥有”另一个对象,请查看外键在哪里。我们可以说一个User“有”一个Profile,因为profiles表有一个user_id列。profile_id但是,如果在表上调用了一个列users,我们会说 aProfile有 a User,并且 belongs_to/has_one 位置将被交换。
User
Profile
has_one :profile
belongs_to :user
profiles
user_id
profile_id
users
这里有更详细的解释。