Rails 3 - 管理部分的路由

时间:2011-09-23 13:31:30

标签: ruby-on-rails view model routes admin

我的管理部分的结构如下所示:

controlers -> admin -> admin_controllers...
views -> admin -> users -> data
views -> admin -> settings -> data

我的routes看起来像是:

resources :users, :user_sessions
match 'login' => 'user_sessions#new', :as => :login
match 'logout' => 'user_sessions#destroy', :as => :logout

修改

  namespace :admin do
    ...      
    resources :users, :user_sessions
    match 'login' => 'user_sessions#new', :as => :login
    match 'logout' => 'user_sessions#destroy', :as => :logout
  end

但如果我设置了浏览器网址admin/login,那么我将收到有关丢失模板的错误(尤其是Missing template user_sessions/new)。这怎么可能?我忘记了什么?

由于

1 个答案:

答案 0 :(得分:0)

要使用名称空间,你必须使用这样的单词:

namespace :admin do
  resources :users, :user_sessions
end

所有观点都应该在app / views / admin /中,就像这样

app/views/admin/users/new.html.erb

API详细信息位于:http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing