2013-11-22 38 views
0

我從一個控制器重定向到另一個。接收控制器uploads沒有index操作,但有一個create操作,我試圖明顯使用該操作。然而,當我重定向,我得到了以下問題重定向到控制器不通過行動

未知的動作 行動「索引」無法找到UploadsController

redirect_to :controller => 'uploads', :action => 'create', flash: {error: "there was an error"}

回答

1

很可能是因爲redirect_to假定其重定向GET請求。

由於索引&創建行動都成爲相同的路徑並根據HTTP動詞,Rails的決定調用哪個動作......

因此,如果應用程序獲取GET請求/上傳它會呈現索引操作,如果它獲得POST,它將調用創建操作。

此外,我不認爲你可以redirect_to http POST ...你確定這就是你想要做的?

+0

是的,是一個'GET/POST'問題。意識到我不想甚至重定向POST動作,但仍然很高興知道它發生的原因! –

0

嘗試在請求指定:method => :post。創建動作應該只對此做出迴應,除非你正在使用路線做一些奇特的事情。