Ruby on rails 错误406,远程:true Ajax表单仍在导致重定向
这让我一整天都很为难 我的应用程序提供文档上传功能,上传后运行create.js.erb并将新记录添加到页面中 我的HTML看起来像这样Ruby on rails 错误406,远程:true Ajax表单仍在导致重定向,ruby-on-rails,ruby-on-rails-3,jquery,Ruby On Rails,Ruby On Rails 3,Jquery,这让我一整天都很为难 我的应用程序提供文档上传功能,上传后运行create.js.erb并将新记录添加到页面中 我的HTML看起来像这样 <div id="doc_upload"> <%= form_for Document.new, remote: true do |f| %> <%= f.file_field :file, multiple: true, name: "document[file]" %> <%= f.hidden_fie
<div id="doc_upload">
<%= form_for Document.new, remote: true do |f| %>
<%= f.file_field :file, multiple: true, name: "document[file]" %>
<%= f.hidden_field :plot_id %>
<%= f.submit 'upload' %>
<% end %>
</div>
我的控制器是:
def create
@document = Document.create(params[:document])
respond_to do |format|
format.js
end
end
正如我所说,这真的让我抓狂,因为Ajax请求似乎没有启动。这是否意味着这可能与不引人注目的JS有关,而不是拾取远程真实数据类型。这是我能想到重定向的唯一原因
如果是,我如何确认和修复此问题
任何帮助都会很好
Ross如果表单中有文件上传,则必须添加
但是您不能使用ajax发布多部分表单,因此表单可能只是正常发布,导致406响应,因为您的控制器只响应js请求。至于它为什么会以某种方式上传文件,这更是一个谜。这将是我的jquery文件上传。。。嗯,这真的很有帮助,谢谢你的建议
def create
@document = Document.create(params[:document])
respond_to do |format|
format.js
end
end