Могу ли я назвать атрибут rails атрибутом?"


У меня есть полиморфная таблица, которую я устанавливаю между моделью, назовем ее документом, и рядом атрибутов, которые она имеет. Итак, у меня есть модель DocumentRelationship, и я хотел написать в этой миграции, что имя полиморфного атрибута будет "attribute". Например, в миграции для DocumentRelationship я бы добавил:

 t.integer :attribute_id
 t.string  :attribute_type

Тогда в модели документа я бы сказал:

 has_many :attributes, :polymorphic => true

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

Или что-то в этом роде.

Можно ли мне назвать это поле "атрибутом"? Я знайте, что вы не можете назвать полиморфное поле "объект"; это приводит к ошибкам..

Спасибо!

1 3

1 ответ:

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

Смотрите раздел, в котором говорится: другие имена, которые, как сообщалось, вызывают проблемы:

Атрибуты-если у вас есть has_many под названием атрибуты, вы не можете доступ к атрибутам объекта больше; только связанные объекты

UPDATE : Эта ссылка содержит больше деталей https://github.com/walterdavis/railsready/wiki Также смотрите его приложение heroku, которое имеет функция поиска http://reservedwords.herokuapp.com/