1

我需要帮助。我想要管理我的 rails 应用程序。我尝试使用命名空间设置路由,但命名空间需要资源,并且资源在获取请求中必须具有 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
4

3 回答 3

1

尝试使用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
于 2012-05-21T16:54:43.967 回答
0
  namespace :admin do
    get "login" => "access#login", :as => :login # GET http://localhost/admin/login - admin_login_path 
  end
于 2012-05-21T14:12:40.967 回答
0

如果您没有一组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
于 2012-05-21T14:50:48.730 回答