2017-07-16 35 views
1

我已經生成了一個腳手架模型carRails 5 - 如何爲腳手架路線添加前綴?

因此,如果我想創建一輛新車,該URL看起來像這樣:/cars/new。我需要將其他信息傳遞給URL,最簡單的方法是將其最終添加爲參數,因此該URL看起來像/cars/new?listing=123

我想要做的是在URL:/l/123/cars/new(l = listing)中得到類似的內容。同其他的操作,以及(如:/l/123/cars/4/edit

如何做我需要修改路線這樣的例子嗎?listing是另一種模式,每listing有車。

謝謝

+0

您已經寫過查詢參數應該是最簡單的方法。你爲什麼試圖避免它們?你在優化什麼? – spickermann

回答

0

AFAIK,你不能足智多謀的方式實現這一目標。你必須定義非足智多謀途徑來實現你想要的。例如,對於cars#new的路線將像下面定義

​​
0

我認爲你可以使用嵌套的資源:

resources :listings do 
    resources :cars 
end 

它會產生這樣listings/:listing_id/cars/:id路線。如果您沒有listings控制器,或者您不想爲其生成路由,只需使用resources :listings, only: [] do ...