Rails default_url_options für ActionController, um alle URLs/Pfade mit .html automatisch formatieren zu können
-
16-09-2019 - |
Frage
Eine unserer Anforderungen war, dass alle unsere URLs mit .html endeten, haben wir die Methode default_url_options überschrieben, um das Format zu den Optionen hinzuzufügen
def default_url_options(options={})
options.merge(:format => 'html')
end
Dies funktioniert größtenteils hervorragend ... aber es verursacht Probleme mit den folgenden Routen:
map.home '/', :controller => 'home'
map.root :controller => 'home'
Es führt dazu, dass diese Routen zurückkehren:
domain.com/?format=html
Ich muss einen Weg finden, um eine Ausnahme von diesen Routen zu machen, ist dies möglich oder kennt jemand eine intelligentere Möglichkeit, dies zu tun.
Lösung
Nun, das lässt es mit Haml funktionieren ... (Erb ungetestet)
map.home '/', :controller => 'home', :format => 'html'
Andere Tipps
Dies schien für mich in einem kurzen Test zu funktionieren.
map.home '/', :controller => 'home', :format => ''
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow