【发布时间】:2014-08-18 05:50:29
【问题描述】:
我正在从我的 application.js 文件发出 ajax 补丁请求:
$.ajax({
type: "PATCH",
url: "/units/" + id,
data: { 'var_1': var_1,
'var_2': var_2,},
success:function(){
alert("Details saved successfully!!!");
},
dataType: "text"
});
// stop normal form submission behaviour
$("#add_form").submit(function(e){ return false; });
这个请求被我的控制器成功接收,并且我的对象的属性被更新了。然后我尝试重定向到具有特定 id 的索引页面。
units_controller.rb
if @unit.update_attributes( ** data ** )
flash.notice = "Successfully updated "
redirect_to :controller => "/units", :action => "index", :id => params[:id]
end
我的问题是 redirect_to 调用包含 PATCH 方法请求,因此返回路由错误。根据我的 routes.rb 文件,它应该只是一个 GET 请求:
resources :units, except: :show
get '/units/index' => 'units#index'
知道为什么我的 redirect_to 调用包含 PATCH 方法请求以及如何将其更改为 GET 吗?
【问题讨论】:
-
尝试“redirect_to units_path”
-
如何在 ajax 请求中重定向?你希望你的浏览器做什么?
-
您是否尝试过调试您的问题?
标签: ruby-on-rails ajax redirect