2016-06-14 20 views
0

基本上我想使用redirect_to方法重定向到PUT控制器動作,但它只是想使用GET動詞。有沒有辦法在redirect_to中指定HTTP動詞?我可以使用Rails 4.2中的`PUT`動詞redirect_to

路線被定義爲耙路由

resume_user PUT /users/:id/resume(.:format) users#resume 

和我已經使用所有具有相同的結果No route matches [GET] "https://stackoverflow.com/users/5/resume"

  • redirect_to的resume_user_url(@user)
  • redirect_to的下面的action:'resume',controller:'users',id:@ user.id
  • redirect_to action:'resume',控制器:'用戶',方法:'put',id:@ user.id

我可能會用錯,在這種情況下,有什麼建議? 感謝 帕特里克

回答

1

standard不允許這樣做。帶有狀態307的重定向禁止瀏覽器在遵循重定向時更改請求方法,但沒有請求使用特定方法的機制。

+0

這很有道理,謝謝。我完全忘了看HTTP規範,認爲這是一個Rails問題。有時間重新評估流量。 – Patrick

-1

嘗試

redirect_to resume_user_url(@user), method: :put 

我已經使用上的鏈接method: :post試過,但我還沒有redirect_to的嘗試。

+0

感謝您的建議,但那是我嘗試過沒有運氣的另一個。你是正確的,它可以用'link_to'方法工作,但有點不同。 – Patrick

相關問題