0
嗨我試圖在我的第一個rails項目上工作,並想知道是否可以將顯示或索引視圖(相冊)與創建更多相冊的表單結合起來。該URL沒有正確的參數來做到這一點?我能否在表單上設置動作,使其「成功」並重新將其重定向到索引頁面?Rails:是否可以在「索引」或「顯示」視圖中添加「創建」表單?
嗨我試圖在我的第一個rails項目上工作,並想知道是否可以將顯示或索引視圖(相冊)與創建更多相冊的表單結合起來。該URL沒有正確的參數來做到這一點?我能否在表單上設置動作,使其「成功」並重新將其重定向到索引頁面?Rails:是否可以在「索引」或「顯示」視圖中添加「創建」表單?
當然,你可以做到這一點,只需將表單代碼放在你想創建/更新的任何頁面上,它就可以工作。
唯一的問題是在成功或不成功的創建/更新後,動作會將您重定向到的位置:通常從new
頁面開始,您將成功重定向到新創建的記錄(show
操作)回到失敗時的new
操作(帶有表單域中的錯誤)。如果你想創建/更新來自不同頁面的記錄,並在每種情況下將動作重定向到不同的頁面,那麼你只需要做更多的工作。
可能性是在表單中添加一個隱藏參數並將其重定向到動作,然後使動作檢查並相應地重定向。例如:
VALID_REDIRECT_ACTIONS = ["show", "index"]
def create
...
if @photo.save
flash[:success] = "Photo successfully created!"
if VALID_REDIRECT_ACTIONS.include?(params[:redirect])
redirect_to params[:redirect]
else
redirect_to @photo
end
else
...
end
end