Любая причина, чтобы избежать слова "тип" в Rails, используя Mongoid? - PullRequest
3 голосов
/ 15 февраля 2012

Я знаю type - это имя магического поля с ActiveRecord для использования в наследовании одной таблицы.Но :type не входит в Mongoid.destructive_fields.Есть ли причина, по которой я не могу использовать его в качестве имени поля?Upload.upload_type чувствует себя так грустно, и я бы предпочел использовать Upload.type.

Более того, class, category и variety не кажутся хорошими альтернативами.

Ответы [ 3 ]

2 голосов
/ 28 февраля 2012

Пока пользуюсь без проблем.Поэтому, если я не буду сталкиваться с какими-либо проблемами в будущем, я не буду отвечать «нет», нет причин избегать использования слова «тип».

0 голосов
/ 25 апреля 2012

Вы правы, что "_type" используется для STI, и, таким образом, "type" является технически допустимым именем атрибута. Это будет работать для вашей ситуации просто отлично. Однако я бы просто осторожно использовал эти «особые имена». Если вы когда-нибудь переключитесь на другую базу данных, вы, вероятно, столкнетесь с проблемами, но если у вас есть контроль над этим и вы знаете, что будете использовать MongoDB, то нет действительно веской причины, по которой вы не можете использовать " поле типа ".

Лично я бы не использовал ни одного из специальных слов, которые используют многие базы данных или фреймворки, поскольку это просто делает его менее запутанным для других. Но это всего лишь личное предпочтение; нет технической причины.

0 голосов
/ 15 февраля 2012

В Mongoid атрибут _type определен, чтобы помочь в ИППП. Так что лучше его тоже не использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...