2016-06-01 15 views
0

Ich habe dies in meinem Routen:Umleiten verschachtelte Ressource in Rails

resources :users do 
    resources :posts 
end 

Es schafft die Show Weg /users/:user_id/posts/:post_id

Großen. Aber wenn jemand /users/:user_id/post/:post_id eintippt (beachte die Singular/Post und nicht/Posts) dann bekommen sie eine 404. Ich möchte eine 302 Umleitung von .../post/:post_id zu ../posts/:post_id in meinen Routen machen. Wie?

Antwort

4

Sie können dies möglicherweise erreichen, indem Sie Folgendes in Ihrer Routenkonfiguration verwenden.

get '/users/:user_id/post/:post_id', to: redirect('/users/%{user_id}/posts/%{post_id}') 

Mehr Infos hier: http://guides.rubyonrails.org/routing.html Rubrik: 3.12 Redirection

+0

Yup. Das wird gehen. Sie müssen den Status in der Umleitung angeben, und zwischen der Umleitung und der öffnenden Klammer sollte kein Leerzeichen stehen. Vielen Dank. – Ben

+0

Yup, tut mir leid, das war ein Tippfehler. Wenn Sie weitere Informationen zu den Umleitungsoptionen benötigen, können Sie die Quelle in http://api.rubyonrails.org/classes/ActionDispatch/Routing/Redirection.html sehen – torresomar

Verwandte Themen