Как переопределить соглашения об именах rails?
У меня есть модель под названием «одежда», которую я хочу быть одиночной (одна часть одежды). По умолчанию rails говорят, что множественное число – это одежда. Правильно или неправильно, я думаю, что это будет более читаемо, если множественное число будет «одеждой».
Как переопределить соглашение о множественном наименовании? Могу ли я сделать это правильно в модели, поэтому мне не нужно делать это снова и снова? Как это изменится, как обрабатываются маршруты (я использую спокойную архитектуру)?
- Соглашение об именах интерфейсов Java / Реализация
- Соглашение об именах classов CSS
- Существуют ли лучшие методы для организации пакетов (Java)?
- Именование интерфейса в Java
- Соглашение об именах - подчеркивание в переменных C ++ и C #
- Как назвать исходные файлы C # для общих classов
- Какую страtagsю вы используете для именования пакетов в проектах Java и почему?
- Руководство по присвоению имен в поле C #?
- Соглашение о назначении Java с помощью сокращений
- Венгерская нотация в C #
- Соглашение об именах в c #
- Что такое идеальное соглашение об именах переменных для переменных цикла?
- Каковы соглашения об именах в C #?
Я не эксперт RoR, но нашел возможный подход . На ссылочном сайте вы можете добавить правило перегиба внутри файла config/initializers/inflections.rb
:
# Add new inflection rules using the following format ActiveSupport::Inflector.inflections do |inflect| inflect.irregular 'clothing', 'clothes' end
Для рельсов 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
Добавьте это в файл environment.rb
если вы пытаетесь остановить плюрализацию базы данных
ActiveRecord::Base.pluralize_table_names = false
С Ruby 2.2.2 windows или linux для меня лучше всего решить:
ActiveRecord::Base.pluralize_table_names = false class Persona < ActiveRecord::Base end personas = Persona.all personas.each do | personita | print "#{personita.idpersona} #{personita.nombre}\n" end p Persona.count