3
def destroy
Event.find(params[:id]).destroy
flash[:info] = "Event deleted"
redirect_to :back
end
,我能夠從2層不同的觀點刪除項目。在一個視圖中它是一個項目列表,所以我可以使用:back
並重新加載相同的頁面。但另一個刪除是刪除項目的視圖,所以一旦它消失了,我想redirect_to
在不同的地方。
我的問題是我如何告訴Rails一個不同的redirect_to
路徑取決於destroy
方法來自哪裏?
就像一個測試,我嘗試使用基於html中的body類的if語句,但實例變量沒有帶入destroy方法(我假設),因爲它不起作用。例如
def destroy
if @body_class == 'one page'
Event.find(params[:id]).destroy
flash[:info] = "Event deleted"
redirect_to :back
elsif @body_class == 'a different page'
Event.find(params[:id]).destroy
flash[:info] = "Event deleted"
redirect_to root_path
end
end
完美 - 感謝您的幫助。明白了! – matski