多部分表单在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工作正常,除了……

我在部分渲染表单,但是我将部分包装在一个标准的非多部分表单标签中,该标签覆盖了多部分表单,并且有点令人惊讶地没有引发任何错误。

无论哪种方式,我都是一个愚蠢的,因为没有注意到这一点,但它现在已经解决,文件上传工作完美。