我有一个名为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: [])
等等。
非常感谢。