Ответ 1
В config/initializers вы найдете файл с именем inflections.rb. Здесь есть несколько инструкций, но вам нужно что-то по строкам:
ActiveSupport::Inflector.inflections do |inflect|
inflect.irregular 'bonus', 'bonuses'
end
Например, я использую "Бонус" в качестве моей модели, поэтому я ожидаю, что "бонусы" будут представлять собой форму множественного числа и "бонус" как единственную форму.
Однако в Ruby это приводит к:
"bonus".pluralize # bonus
"bonuses".singularize # bonuse
Итак, когда я делаю "has_many: бонусы", например, он не использует модель Bonus.rb(так как Ruby ожидает модель Bonuse.rb). Есть ли способ исправить это в Ruby on Rails так или иначе, что "бонусы" действуют как множественная форма для модели bonus.rb?
В config/initializers вы найдете файл с именем inflections.rb. Здесь есть несколько инструкций, но вам нужно что-то по строкам:
ActiveSupport::Inflector.inflections do |inflect|
inflect.irregular 'bonus', 'bonuses'
end
Просто для резервного копирования bcarlso, больше на Inflector можно найти здесь:
http://4loc.wordpress.com/2009/04/09/inflector-rails-pluralization/
Обратите внимание, что позиция блока Inflector.inflections важна и, как отмечено в ссылке, должна быть после блока Initializer.run.
Я считаю, что вы используете Inflector в своей среде. rb (память немного отрывочная) Если я правильно помню, вы помещаете его в блок
Inflector.inflections { | i | i.irregular 'bonus', 'bonuses' }