带有文件的 rails 表单的真实性令牌无效

Don*_*n P 5 ajax ujs ruby-on-rails-4

我正在使用 UJS 处理带有 ajax 的表单提交。表单中有一个文件输入。我从接收它的控制器收到一个无效的真实性令牌错误。我是否忘记了表单或文件标签上的某些属性?

ActionController::InvalidAuthenticityToken

<%= form_for @block, 
    remote: true, 
    html: { id: "userInputForm", class: "form" } do |f| %>
    <%= f.file_field :something_to_replace %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

小智 5

这是Rails 的一个错误。要解决这个问题,您有两种选择:

  1. 设置config.action_view.embed_authenticity_token_in_remote_forms = true在你的config/application.rb
  2. 将选项传递authenticity_token: true给您form_for