我在我的一个应用程序中设置回形针 gem 时遇到问题。
当我尝试保存上传的文件时,我收到 No handler found for
错误消息。
我做过的事
迁移:
add_attachment :orders, :file
模型:
has_attached_file :file validates_attachment_content_type :file, :content_type => /\Aimage\/.*\Z/
控制者:
def order_params params.require(:order).permit(:file)
观点:
form_tag url, method: :post, html: {multipart: true} ... = file_field_tag 'order[file]', disabled: true, id: 'mtd_file',accept: 'image/png,image/gif,image/jpeg'
当我尝试在我的 Controller 中执行 Order.create params[order]
时出现错误
No handler found for "file.jpg"
当我查看 order[file]
参数时,我发现它是一个字符串 file.jpg
(上传文件的名称)。
最佳答案
尝试使用下面的代码行,您不必将 mulitpart
作为 html
散列传递
form_tag url, method: :post, multipart: true
对于 form_for
你必须在 html
散列中传递 multipart
form_for(@user), :html => { :multipart => true } do |f|
更多信息,您可以引用文档:RailsGuides - Form Helpers - 5 Uploading Files
关于ruby-on-rails - 回形针找不到 "file.jpg"rails 4 的处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29094795/