Мне нужно определить перегиб для слова «шасси», где одно и то же слово определяет как единственное, так и множественное число, и я действительно борюсь с этим. я думал, что я был там с определением инициализации/inflections.rbRails 3.x Как правильно определить перегибы
ActiveSupport::Inflector.inflections do |inflect|
# inflect.plural /^(ox)$/i, '\1en'
# inflect.singular /^(ox)en/i, '\1'
# inflect.irregular 'person', 'people'
# inflect.uncountable %w(fish sheep)
inflect.uncountable(/.*chassis.*/i)
end
принимая к сведению, например inflect.uncountable %w(fish sheep)
я попытался использовать inflect.uncountable% вес (шасси), когда я первый создал подмостки, но тот Бесполезный» t работала хорошо, так как она не учитывала ведущие роли в путях и вызывала проблемы с отношениями и другими таблицами, такими как car_chassis и chassis_lookup.
Просмотрев различные решения, предоставленные в качестве ответов на подобные вопросы в переполнении стека, я в итоге придумал inflect.uncountable(/.*chassis.*/i)
, который, казалось, заботился о строительных лесов, но у меня проблема с маршрутами, где <%= link_to "Chassis", admin_chassis_url%>
не дает мне маршрута для показа ошибка действия.
ActionController::RoutingError - No route matches {:action=>"show", :controller=>"admin/chassis"}
Который имеет смысл, как я хочу, действие индекса, поэтому я не передавая объект на пути, но Rails, очевидно, думая, что я прошу, что шоу Действие
другие примеры для регулярных выражений-х
# inflect.plural /^(ox)$/i, '\1en'
# inflect.singular /^(ox)en/i, '\1'
всего лишь полный gobbledygook для меня, и изучение регулярных выражений требует целой жизни обучения, что у меня нет наклонности или здравомыслия, чтобы опустить голову, а документация по рельсам http://api.rubyonrails.org/classes/ActiveSupport/Inflector/Inflections.html - это откровенный путь этический.
У меня, очевидно, нет права перегиба. Может ли кто-нибудь дать мне полное решение относительно того, как я должен определить перегиб для слова «шасси» для меня и для других, потому что ни один из предыдущих ответов, которые я нашел, не дает полного и правильного решения.
Awesome. Бог знает, почему я не проверял «рейк-маршруты». Я несколько дней разрывал мои волосы – jamesc