Ich arbeite mit Grails 2.1.1
und möchte eine Handvoll angepasster URLs hinzufügen, die Controller-Aktionen zugeordnet sind.
Ich kann das machen, aber das ursprüngliche Mapping funktioniert immer noch.
Ich habe beispielsweise ein Mapping add-property-to-directory
in meinem UrlMappings
wie folgt erstellt:
Nun kann ich /mysite/add-property-to-directory
und PropertyController.create
ausführen, wie ich es erwarten würde.
Allerdings kann ich /mysite/property/create
noch treffen und es wird die gleiche PropertyController.create
-Methode ausgeführt.
Im Sinne von DRY möchte ich eine 301 Redirect von /mysite/property/create
bis /mysite/add-property-to-directory
machen.
Ich konnte keinen Weg finden, dies in UrlMappings.groovy
zu tun. Kennt jemand eine Art, wie ich das in Grails erreichen kann?
Vielen Dank!
AKTUALISIEREN
Hier ist die Lösung, die ich basierend auf Toms Antwort implementiert habe:
UrlMappings.groovy
%Vor%RedirectController.groovy
%Vor%Ab Grails 2.3 ist es möglich, Redirects direkt in den UrlMappings auszuführen, ohne dass ein Redirect-Controller benötigt wird. Wenn Sie also jemals ein Upgrade durchführen, können Sie in UrlMappings wie in der Dokumentation umleiten >:
%Vor%Anforderungsparameter, die Teil der ursprünglichen Anforderung waren, werden in die Umleitung eingeschlossen.
Tags und Links grails grails-2.0