我有一個rails控制器,其中edit
動作顯示一個表單,其中可以更改對象的所有值。所以現在當用戶訪問/controller/1
時,我想要做的和訪問/controller/1/edit
時完全一樣。Rails在調用show動作時執行編輯
我必須在不修改或添加路線的情況下實現此目的,也不要在控制器中使用redirect_to
。否則,JQueryMobile會跟蹤它的歷史記錄中的重定向。
我試圖通過alias :show :edit
做到這一點的紅寶石方式,但它失敗了,因爲鐵軌仍在搜尋show.html.erb
如何做到這一點?
不幸的是,這似乎不工作(在rails 4.0.4中測試),因爲自定義定義的路由優先於由'resources:users'定義的路由 - 這意味着GET to/users/new將會以id:'new'觸發編輯操作。 – 2014-05-30 06:56:59
它可以通過破解路由來修復以強制新路由的優先級 - 編輯答案以反映這一點 – 2014-05-30 07:05:47