0

我读了一些代码

attr_accessible :namespace_id, :creator_id, as: :admin
belongs_to :creator,      foreign_key: "creator_id", class_name: "User"

为什么不简单地user_id在模型(和表)中声明 a ,然后简单地使用belongs_to :user?顺便说一句,现在creator是 的别名creator_id

4

1 回答 1

2

因为user在语义上是没有意义的,而creator不是。

作为一个例子,假设我有两个模型,称为 aBookPerson。我可以在表中建立与书籍作者的关联people,它将是Person. 我可以将关联称为“人”,仅仅是因为它与模型的名称相匹配,或者称它为“作者”。哪一个更准确地传达了模型之间的关系?

于 2013-08-08T15:07:25.827 回答