我想在我的路線的命名約定中保持一致。任何資源的默認參數爲:id
。但是,如果在其中嵌套另一個資源,父資源的參數更改爲:parent_id
。 我的路由是這樣的:覆蓋嵌套路線中的參數
resources :users do
resources :projects do
resources :issues
end
end
對於用戶模型會產生像:id
的URL,URL項目將是:user_id/:id
和問題的URL將被:user_id/:project_id/:id
。我試圖重載默認PARAM以下this
resources :users, param: :user_id do
resources :projects, param: :project_id do
resources :issues, param: :issue_id
end
end
它生成的網址,如::user_user_id/:project_project_id/:issue_id
。由於我重寫它,我會希望關閉父資源的默認附加關閉。我希望我的路線看起來像:user_id/:project_id/:issue_id
,我希望它能夠與所有模型保持一致。即項目應映射到:user_id/:project_id
。
對不起Haider,但它只添加了參數列表的一個鍵:'參數:{「key」=>:project_id,「user_id」=>「addie」,「id」= >「new_project」}' – sonalkr132
@ sonalkr132你想將'/ customers /:customer_id/projects /:project_id/issues'轉換爲'/:user_user_id /:project_project_id /:issue_id' –
不!我想要其他方式。即':user_user_id /:project_project_id /:issue_id'到':user_id /:project_id /:issue_id'。覆蓋參數會生成前者。 – sonalkr132