2011-10-05 137 views

回答

9

不,請不要這樣做。

這樣做的原因是它爲每個應用程序中的嵌套資源提供了一個通用接口。通過在你的應用程序中使它變得不同,你實際上將「反對谷歌」的Rails。 Rails有一套嚴格的約定,你應該堅持。當你走這條路時,事情會變得混亂。


但是,如果你想拍攝自己的腳,打個比方,你將需要手動定義的路由。以下是控制器中七種標準操作的路線:

get 'leagues/:id/schedules', :to => "schedules#index", :as => "league_schedules" 
get 'leagues/:id/schedule/:schedule_id', :to => "schedules#show", :as => "league_schedule" 
get 'leagues/:id/schedules/new', :to => "schedules#new", :as => "new_league_schedule" 
post 'leagues/:id/schedules', :to => "schedules#create" 
get 'leagues/:id/schedule/:schedule_id/edit', :to => "schedules#edit", :as => "ed it_league_schedule" 
put 'leagues/:id/schedule/:schedule_id', :to => "schedules#update" 
delete 'leagues/:id/schedule/:schedule_id', :to => "schedules#destroy" 

正如您所看到的,這非常難看。但是,如果你真的真的真的想這樣做,那就是你如何做到這一點。