2012-01-31 58 views
1

我更喜歡手寫我的Rails應用程序的路線,我現在有一種情況,我不知道什麼是最好的辦法做事情。我想有一個樓宇控制器,顯示不同的頁面,每一個建築,如:如何處理這種路由的情況是Rails

building/town_center 
building/sawmill 
.. 

上述每個人都應該有自己的動作和視圖頁面。我通常會創建這樣一個路徑:

scope :path => '/building', :controller => :building do 
    get '/view/:slug' => :view, :as => 'view_building' 
    end 

但這僅指定一個動作,然後將需要調用另一個內部控制器方法重定向到所需的模板來顯示。所以,我希望你的意見,你是否明確指定了每個建築物(和行動)的不同路線?或者只是在view_building操作中重定向?

回答

1

我覺得你這樣的事情後:

match "/building/:name", :to => "buildings#show", :as => :building 
在你的控制器動作「秀」只呈現爲建築物名稱模板

然後:

render :template => 'buildings/#{params[:name]}' 
+0

我明白了,你在想的單一的路線,我也認爲這可能是最好的方式,thanx。 – Spyros 2012-01-31 05:10:11

+0

不用擔心。標記爲答案,如果適合你 – 2012-01-31 05:13:54

+0

我遇到的唯一問題是如何在單個動作中處理可能的不同數據。鎮中心可能有一個名爲info的變量,而鋸木廠可能有一個命名報告。這就是爲什麼我在考慮採取更多行動:/我對此有點不確定。 – Spyros 2012-01-31 05:18:05

相關問題