未经许可的参数,即使它在我强大的参数中

时间:2018-03-05 04:53:57

标签: ruby-on-rails

我有一个名为Contracts的模型。在这个模型中,我允许以字段:contract_pdf的名称上传文件的PDF,其中包含pdf_file_name等关联字段,并且在为模型创建附件时,所有其他hooblah rails都会为您提供。我有一个简单的表单,我收集pdf文件,如下所示:

<%= form.file_field :contract_pdf, required: true %>

当我检查我的rails服务器时,文件得到处理,我可以在参数中看到它。例如。这是我得到的一个例子:

"contract"=>{"contract_pdf"=>#<ActionDispatch::Http::UploadedFile:0x007fd4c5c5dd88 @tempfile=#<Tempfile:/var/folders/d1/z4545454543/T/RackMultipart24534504-544-9zap3z.pdf>, @original_filename="Consulting Agreement.pdf", @content_type="application/pdf", @headers="Content-Disposition: form-data; name=\"contract[contract_pdf]\"; filename=\"Consulting Agreement.pdf\"\r\nContent-Type: application/pdf\r\n">

但是当需要持久保存数据时,我得到了这个:

Unpermitted parameter: :contract_pdf

我的强大参数包括:contract_pdf,如:

private
   def contract_params
     params.require(:contract).permit(:client_name,:contract_pdf)
   end

对于其他几个rails应用程序中的其他PDF附件,我已经完成了数百次这样的事情,所以我不知道发生了什么,并尝试了permit( contract_pdf: [])等等。

非常感谢。

0 个答案:

没有答案