Как переопределить соглашения об именовании rails?
У меня есть модель под названием "одежда", которую я хочу сделать синглулярной (one piece of clothing). По умолчанию rails говорит, что множественное число-это одежда. Правильно или нет, я думаю, что будет более читабельно, если множественное число будет "одежда".
Как переопределить соглашение о множественном числе имен? Могу ли я сделать это правильно в модели, чтобы мне не приходилось делать это снова и снова? Как это изменит способ обработки маршрутов (я использую restful architecture)?
4 ответа:
Я не эксперт RoR, но нашел возможный подход. С указанного сайта вы можете добавить правило перегиба внутри файла
config/initializers/inflections.rb
:# Add new inflection rules using the following format ActiveSupport::Inflector.inflections do |inflect| inflect.irregular 'clothing', 'clothes' end
Для rails 2.3.2 и, возможно, 2+, вам нужно сделать это немного иначе:
ActiveSupport::Inflector.inflections do |inflect| inflect.plural /^(ox)$/i, '\1\2en' inflect.singular /^(ox)en/i, '\1' inflect.irregular 'octopus', 'octopi' inflect.uncountable "equipment" end