Ich konnte weder hier noch anderswo etwas finden, was sowohl das Einschränken der Routen einer Ressource als auch das Hinzufügen zusätzlicher nicht-REST-fähiger Routen in Rails 3 betrifft. Es ist wahrscheinlich sehr einfach, aber jedes Beispiel oder jede Erklärung, die ich gefunden habe, adressiert nur einen Fall nicht beides gleichzeitig.
Hier ist ein Beispiel von dem, was ich in Rails 2 gemacht habe:
map.resources :sessions, :only => [:new, :create, :destroy], :member => {:recovery => :get}
Sehr einfach, wir wollen nur 3 der 7 RESTful-Routen, weil die anderen für diese Ressource keinen Sinn ergeben, aber wir möchten auch eine weitere Route hinzufügen, die bei der Kontowiederherstellung verwendet wird.
Nun, aus dem, was ich zusammenfasse, ist eines dieser Dinge sehr einfach:
resources :sessions, :only => [:new, :create, :destroy]
Genau wie in Rails 2. Und:
%Vor%Also, wie kombiniere ich diese beiden? Kann ich noch die alte Rails 2-Methode verwenden? Gibt es einen bevorzugten Weg, dies in Rails 3 zu tun?
Es sollte so ähnlich funktionieren.
%Vor%Es gibt einen noch kürzeren Weg, wie von coreyward vorgeschlagen.
Überprüfen Sie die Schienenführungen, Schienenrouting von außen nach ". Ich kann auch "The Rails 3 Way" von Obie Fernandez empfehlen, die 2 ziemlich gute Kapitel über Routing und RESt bekommen hat.
Prost
Tags und Links ruby ruby-on-rails routes