Rails名称空间和路由

我需要帮助。 我想管理我的rails应用程序。 我尝试使用命名空间设置路由,但命名空间需要资源,资源必须在get请求中具有id。

有谁知道如何正确设置? 我用的是windows机器。 谢谢。

我的路线:

Web::Application.routes.draw do namespace :admin do resources :access # GET http://localhost/admin/access/login/login - stupid?? end match ':controller(/:action(/:id))(.:format)' end 

尝试使用resource :access而不是resources :access

  namespace :admin do resource :access end 

它会生成路线:

  admin_access POST /admin/access(.:format) admin/access#create new_admin_access GET /admin/access/new(.:format) admin/access#new edit_admin_access GET /admin/access/edit(.:format) admin/access#edit GET /admin/access(.:format) admin/access#show PUT /admin/access(.:format) admin/access#update DELETE /admin/access(.:format) admin/access#destroy 
  namespace :admin do get "login" => "access#login", :as => :login # GET http://localhost/admin/login - admin_login_path end 

如果您没有一组restful资源 ,但只想要一组不同的控制器方法,这里有一种方法可以做到:

 scope '/admin' do get '' => "admin#index", :as => 'admin_home' get '/users' => 'admin#users', :as => 'admin_users' get '/other_admin_task' => 'admin#other_admin_task', :as => 'other_admin_task' end