我可以将rails属性命名为“属性吗?”

时间:2012-07-12 21:15:22

标签: ruby-on-rails ruby-on-rails-3 polymorphic-associations

我有一个多态表,我在模型之间设置,让我们称之为Document,以及它拥有的许多属性。所以我有一个DocumentRelationship模型,我想写这个迁移,多态属性名称将是“属性”。 EG在迁移DocumentRelationship时我会补充:

 t.integer :attribute_id
 t.string  :attribute_type

然后,在Document模型中我会说:

 has_many :attributes, :polymorphic => true

 has_many :authors, :through => :attributes, :source_type => "Author"

或类似的东西。

我可以将此字段命名为“属性”吗?我知道你不能命名多态字段“对象”;这会导致错误..

谢谢!

1 个答案:

答案 0 :(得分:2)

http://oldwiki.rubyonrails.org/rails/pages/ReservedWords

请参阅以下部分:报告导致其他问题的其他名称:

  

属性 - 如果你有一个has_many被​​称为属性,你就不能   再次访问您的对象属性;只有关联的对象

更新:此链接包含更多详细信息https://github.com/walterdavis/railsready/wiki,另请参阅具有搜索功能的{her}应用http://reservedwords.herokuapp.com/