我目前正在使用 rails 4 远程表单 和 json 响应:
respond_to do |format|
if read_only || @object.update_attributes(object_params)
format.json { render json: {}, status: :ok }
else
format.json { render json: @object.errors.messages, status: :unprocessable_entity }
end
end
大多数时候它运行良好,但有时,在 chrome 上,它会给出一个奇怪的 ActionController::UnknownFormat 错误。
这很难追踪,因为它是零星的...
有人遇到过这个问题或有解决方案吗?
编辑:
根据要求,来自日志
Started PATCH "/objects/727"
I, INFO -- : Processing by ObjectsController#update as JS
Started PATCH "/objects/727"
I, INFO -- : Processing by ObjectsController#update as HTML
看起来你是对的,失败的请求并不总是 JS,但我想不出它不总是以相同方式运行的原因,以及为什么它只发生在 chrome 上?
最佳答案
几个月前我遇到了这个问题,我的错误聚合器向我显示了类似的错误。这些错误仅针对使用 IE7 和更早版本浏览器访问该站点的用户。我使用的现有 jquery 版本 - 2.2.0 不支持旧浏览器,因此我不得不将 jquery 版本降级到 1.9.1,这为我解决了问题。
关于ruby-on-rails - 远程表单的 ajax 调用上的零星 ActionController::UnknownFormat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20479285/