如何使 Rails 关系易于访问



我已经写了几年的Rails,attr_accessible :personattr_accessible :person_id之间的差异真的困扰着我。

attr_accessible :person使处理表单数据变得烦人,尤其是对于需要访问f.select :person_id...的选定帮助程序

attr_accessible :person_id :使设置AR查找器结果更加详细,例如User.person_id = Person.create!(name: "Hugh").id

我也不介意太多,但同时使用两者似乎是不必要的。我也从未真正在其他人的代码中看到过偏好。这里有我应该遵循的约定吗?

我所知,使用attr_accessible :person_id是最佳做法。模型对象将自动转换为 id,因此您应该能够编写如下内容:User.first.person_id = Person.create!(name: "Hugh")甚至更短:User.first.person.create!(name: "Hugh")

最新更新