2012-10-04 90 views
0

REST風格的路線我已經寫在Rails的3.2.8主要銷售門票音樂活動的電子商務網站。到目前爲止,我已經在應用程序中使用簡單的RESTful路線一直:生成動態前綴

/ => default route: /events 
/events 
/events/1 
/events/1/new 
/events/2 
... 

使用在同一個地方發生的,但是從現在開始,將是兩個地方,比方說「莫倫比」和「馬拉卡納所有事件」。 廣場是應用程序中的模型,它是事件之間一個非常重要的區別。所以,我想使這個地方命名爲路徑的一部分,並且有如下途徑:

/ => default route: page to choose place 
/morumbi => same as /morumbi/events 
/morumbi/events/1 
/morumbi/events/1/new 
/maracana => same as /maracana/events 
/maracana/events/2 
... 

雖然我知道該怎麼做,使用#match方法,我已經好多個創建路線用更容易維護#resources方法,我想留住他們。

你知道解決辦法避免使用#match

回答

3

您需要使用#scope方法:

scope path: ':place_name', as: 'place' do 
    resources :events 
    ... 
end 

所以GET /morumbi/events/1將調用EventsController#show與參數id: '1'place_name: 'morumbi'