多部分表单在Rails中不起作用
我一直在尝试在Rails中创建一个多部分表单,这很疯狂,但我真的不确定如何解决这个问题。
目前,以下是我视图中的代码:
{:multipart => true } do |f| %>
但是,返回的HTML如下:
对于我的生活,我无法弄清楚为什么表单不会显示为多部分。 此特定表单用于使用回形针将图像上传到AWS,但每次都失败,可能是因为它不是多部分表单。
救命! :)谢谢。
嗨,根据Rails API v3.1.3 ,您的代码应如下所示:
<%= form_for @account,{},:html => {:multipart => true } do |f| %>
区别在于将空选项传递给rails helper,它将读取您的html参数。
谢谢
更新:
这是从我的一个项目复制的代码:它正在Rails 3.1下运行和运行
也许你可以尝试在“form_for”之后加上括号
<%= form_for(@account,{},:html => { :id=>"account_form",:multipart => true }) do |f| %> <%= render :partial => "form", :object => f %> <%= f.submit 'create' %> <% end %>
这对我有用。
<%= form_for(@account, html: { :multipart => true }) do |f| %>
要么
<%= form_for(@account, html: { :enctype => 'multipart/form-data' }) do |f| %>
根据@ peterpengnz的回答,为form_for
提供一个空的{}
参数得到了ArgumentError:
参数个数错误(1个为2个)
事实certificate,我是一个巨大的白痴,原始forms工作正常,除了……
我在部分渲染表单,但是我将部分包装在一个标准的非多部分表单标签中,该标签覆盖了多部分表单,并且有点令人惊讶地没有引发任何错误。
无论哪种方式,我都是一个愚蠢的,因为没有注意到这一点,但它现在已经解决,文件上传工作完美。