Einschränken von Ressourcenrouten und Hinzufügen zusätzlicher nicht-REST-fähiger Routen in Rails 3

9

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?

    
seaneshbaugh 19.06.2011, 19:23
quelle

2 Antworten

16

Sie können Argumente und einen Block an resources übergeben:

%Vor%

Und testen Sie es mit rake routes .

    
coreyward 19.06.2011, 19:30
quelle
5

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

    
klaffenboeck 19.06.2011 19:31
quelle

Tags und Links