2012-01-03 221 views
1

在我的應用程序中,我使用多級命名空間。比如我有以下控制器:命名空間和路由

class Admin::Userdesk::AccountsController < ApplicationController 
    def show 
     .... 
    end 

    def edit 
     .... 
    end 
end 

在我的routes.rb我有以下幾點:

namespace :admin do 
    namespace :userdesk do 
     resource :dashboards do 
     end 
     resource :accounts do 
     end 
    end 
end 

我看到的一個問題是,如果我嘗試鏈接或導航到/管理/ userdesk /帳號/顯示/ 1 /管理/ userdesk /帳號/編輯/ 1我得到的例外

No route matches [GET] "/admin/userdesk/accounts/show/1"

No route matches [GET] "/admin/userdesk/accounts/edit1"

我不確定我在哪裏混合了我的路由。任何幫助,這是非常感謝。

回答

3

您的問題可能是由您正在測試的路線導致的,而不是導軌標準。試試這個:

相反 的/admin/userdesk/accounts/show/1嘗試/admin/userdesk/accounts/1

而不是/admin/userdesk/accounts/edit/1 嘗試/admin/userdesk/accounts/1/edit

那些應與當前的路線運行。

編輯:

我還注意到,您在您的routes.rb使用resource。您應該將其改爲resources(複數)。