小编典典

belongs_to 和 has_one 有什么区别?

all

abelongs_to和 a 和有什么不一样has_one

阅读 Ruby on Rails 指南对我没有帮助。


阅读 171

收藏
2022-08-02

共1个答案

小编典典

他们基本上做同样的事情,唯一的区别是你在关系的哪一边。如果 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 位置将被交换。

这里有更详细的解释。

2022-08-02