2011-06-18 28 views
2

我用Rails 3.0.9 +紅寶石1.9.2 P180 +設計,這是我的路線:的Rails 3.0.9 +紅寶石1.9.2 P180 +設計 - 路線

[...] 
devise_for :users,:controllers => { :sessions => "users/sessions" } 
[...] 
root :to => "users/sessions#new" 

我基本上想使色器件的登錄頁面我的根路徑...但是當我嘗試它在我的本地服務器(HTTP://本地主機:3000),我收到以下錯誤:

Unknown action 

Could not find devise mapping for path "/". Maybe you forgot to wrap your route inside 
the scope block? For example: devise_scope :user do match "/some/route" => 
"some_devise_controller" end 

回答

3

試試這個:

devise_scope :user do 
    root :to => "users/sessions#new" 
end 

編輯: 如果你使用色器件的默認控制器,然後你可以這樣做:

devise_scope :user do 
    root :to => "devise/sessions#new" 
end 
+0

會'用戶/'在這種​​情況下,多餘的? – raidfive

+0

取決於您如何分類控制器。如果你有'class SessionsController David

+0

我會在稍後測試以上,但這是我做了什麼(它似乎工作): 'devise_for:users,:controllers => {:sessions =>'users/sessions'} do' 'root:to =>「用戶/會話#新」 結束# ...這devise_for和devise_scope的東西可以是相當混亂。 – Dan