Переопределить рельсовый метод url helper глобально

У меня был маршрут, который используется через мое приложение как foo_path => /foo

Теперь я переношу этот маршрут в другое приложение, которое по-другому определяет путь URL /deep/path а также назовите query_paramters используется в прошлом foo_path Контроллер по-разному.

Я надеюсь переопределить foo_path метод, так что теперь он возвращает /deep/path вместо /foo при вызове в виде контроллеров... при преобразовании имен некоторых параметров запроса

Я нашел ответ на stackru, но метод, который они используют, похоже, больше не работает на rails 4.2.7, которая является версией rails, которую я сейчас использую.

Как я могу переопределить foo_path метод через все приложение, так что он возвращает /deep/path вместо /foo в рельсах 4.2.7, будучи в состоянии манипулировать query_parameters?

1 ответ

Что вам нужно сделать, это иметь именованный маршрут.

Например, допустим, ваш старый путь был идентифицирован как foo и вы получили к нему доступ как foot_path,

Тогда вы можете сделать что-то подобное в маршрутах.

'/bar', to: 'controller#action', as: :foo

Сюда foo_path сейчас даст /bar

ref: http://guides.rubyonrails.org/routing.html

Другие вопросы по тегам