2012-07-20 239 views
1

我有一個'companies_controller',它變得越來越大,因爲它控制着一切。一家公司有一項服務,我需要將其設置爲公司的「子路線」。路由到'子控制器'

resources :companies do 
    member do 
    get 'services/service' 
    end 
end 

我使用它來訪問我的路線: services_service_company_path

我得到這個:

Routing Error 

uninitialized constant Companies 

任何幫助

我我公司這樣的路由?我是Rail/Ruby的新手,所以我不確定如何正確地陳述我的問題。

+0

嘗試運行'rake routes'和chec k如果存在'services_service_company_path' ... – gabrielhilal 2012-07-20 15:57:39

+0

services_service_company GET(/:locale)/companies/:id/services/service(.:format)公司/:id/services#service – 2012-07-20 16:07:58

+0

或如何'奴隸'的控制器,即我希望該服務控制器是一個嵌套的控制器。不知道如何把它放在Rails的條款。 – 2012-07-20 16:13:04

回答

1

,你可以這樣做:

你應該這樣做

resources :companies do 
    resources :services 
end 

如果除了由資源提供的REST路線您還需要一個GET service

resources :companies do 
    resources :services do 
    member do 
     get 'service' 
    end 
    end 
end 
+0

它的工作,但我的佈局打破了...我的控制器是好的,但我沒有我的應用程序佈局,任何想法的頁面? – 2012-07-20 16:39:00

+0

哪一個意見打破了?你的意思是服務?你的service_controller中有'service'這個動作嗎? – gabrielhilal 2012-07-20 16:42:07

+0

對不起,我的意思是,當我進入path/companies/1/services時,我沒有得到任何佈局,因爲我得到/ companies/1。所以服務的'索引'本身就是全部顯示的。我有一個公司的佈局,似乎沒有與服務相關聯。 – 2012-07-20 16:44:22

1

你有一個ServicesController類嗎?如果你想有services爲公司的嵌套控制器

resources :companies do 
    resources :services do 
    member do 
     get 'service' 
    end 
    end 
end