Rails default_url_options для actioncontroller автоматически форматирует все URL-адреса / пути с помощью .html
-
16-09-2019 - |
Вопрос
Одним из наших требований было, чтобы все наши URL заканчивались на .html Мы переопределили метод default_url_options, чтобы добавить формат в параметры
def default_url_options(options={})
options.merge(:format => 'html')
end
По большей части это отлично работает...но это вызывает проблемы со следующими маршрутами:
map.home '/', :controller => 'home'
map.root :controller => 'home'
это приводит к возврату этих маршрутов:
domain.com/?format=html
Мне нужно найти способ сделать исключение из этих маршрутов, возможно ли это или кто-нибудь знает более разумный способ сделать это.
Решение
Что ж, это заставляет его работать с haml...(erb непроверенный)
map.home '/', :controller => 'home', :format => 'html'
Другие советы
Это, казалось, сработало для меня в быстром тестировании.
map.home '/', :controller => 'home', :format => ''
Не связан с StackOverflow