2016-03-26 15 views
0

Ich mag die folgende einfall Routen für Team:Die Angabe von „Unterverzeichnis“ -Pfad für Ressourcen

/admin/users/teams 
/admin/users/team/new 
/admin/users/team/:id 
etc... 

Mit folgendem Weg Helfer

admin_teams_path 
new_admin_teams_path 
edit_admin_teams_path 
etc... 

Aber mit dem einzigen Namespacing ich kenne und nutzen

namespace :admin do 
    namespace :users do 
    resources :teams, except: [:index] 
    end 
end 

Ich bekomme nur diese langen Route Helfer mit "Benutzern" in ihnen:

admin_users_teams_path 
new_admin_users_teams_path 
edit_admin_users_teams_path 

Antwort

1

Entfernen Sie den users Namespace und verwenden Sie die Option path in Ihrer Route:

namespace :admin, path: "admin/users" do 
    resources :teams, except: [:index] 
end 

, die folgenden Routen gibt:

$ rake routes 
    admin_teams POST /admin/users/teams(.:format)   admin/teams#create 
new_admin_team GET /admin/users/teams/new(.:format)  admin/teams#new 
edit_admin_team GET /admin/users/teams/:id/edit(.:format) admin/teams#edit 
    admin_team GET /admin/users/teams/:id(.:format)  admin/teams#show 
       PATCH /admin/users/teams/:id(.:format)  admin/teams#update 
       PUT /admin/users/teams/:id(.:format)  admin/teams#update 
       DELETE /admin/users/teams/:id(.:format)  admin/teams#destroy 
Verwandte Themen