2016-02-11 32 views
2

假設一個用戶正在編輯他們的設置,它失敗了,並且url現在是/ user而不是/ user/edit,並且它正在使用更新用戶控制器中的操作,而不是返回到編輯操作。有什麼方法可以改變它嗎?當表單失敗時,「渲染」編輯「」使用更新操作而不是編輯操作

我在編輯操作中有實例變量,現在我也必須將它們放在更新操作中,以便頁面在表單失敗時仍然有效。這是很容易忘記的事情。你能告訴render 'edit'不僅渲染edit.html.erb,而且還使用編輯操作?

也許類似render 'edit', :action => 'edit'

+0

你可以做'redirect_to:action =>:edit',但是你需要傳遞任何你需要的變量,例如:有錯誤的實例變量。這個問題涉及傳遞變量:http://stackoverflow.com/questions/4887321/how-to-pass-a-variable-with-redirect-to –

回答

0

您可以定義一個私有方法來設置您的實例變量。然後在這兩個操作中重新使用此方法。

相關問題