Можно ли заставить Rails использовать тире (-) вместо подчеркивания при обращении к контроллерам.
В настоящее время существует удобная функция Инфлектора
, называемая параметризация
. Он позволяет создавать очень красивые постоянные ссылки, в которых все специальные символы удаляются и заменяются дефисами ...
Однако при использовании контроллеров, содержащих несколько слов (например, contact_methods_controller.rb
), вы определяете свой маршрут:
resources :contact_methods
Это создает карту для / contact_methods
(НЕ / contact-methods
). Когда я смешиваю эти два, я получаю уродливые URL-адреса вроде:
/contact_methods/1-preferred-email
Я бы хотел иметь контроллеры карт Rails с тире вместо подчеркивания. Все мои исследования говорят о необходимости индивидуального сопоставления каждого контроллера:
match 'contact-methods(/:action)' => 'contact_methods'
но это действительно глупо, на мой взгляд, и становится беспорядочным, если я вкладываю ресурсы ... Мне не нужно определять их как настраиваемые маршруты. Есть ли в ActionDispatch
параметр, который автоматически перезаписывает эти вещи? Не могу найти ...