使用file_field时,Rails nested_form_for无法正常工作

时间:2012-11-07 09:23:14

标签: ruby-on-rails ruby ruby-on-rails-3 paperclip nested-forms

使用nested_form_for并在file_field中设置fields_for时,我从回形针中收到以下错误:

在ProjectsController中创建的Paperclip :: AdapterRegistry :: NoHandlerError #creore

No handler found for "scan.pdf"

这是正确的,因为params不显示#<ActionDispatch::Http::UploadedFile>对象,而只显示文件名。

在使用它nested_form_for之前,它可以在我取消注释file_field时起作用,当我为fields_for构建第一个对象时它也有效但是这不是必需的.. < / p>

我的设置如下:

  • ruby​​ 1.9.3
  • rails(3.2.8)
  • paperclip(3.3.0)
  • nested_form(0.3.0)

代码:

# @project.schemes.build
= nested_form_for @project do |f|
  = f.fields_for :schemes do |ff|
    = ff.text_field :name
    = ff.file_field :scan

1 个答案:

答案 0 :(得分:2)

生成的表单不是多部分,您有2个选项可以解决此问题:

  • 手动指定multipart

    = nested_form_for @project, :html => { :multipart => true } do |f|
    
  • 尝试使用主分支中的nested_form gem,该问题已解决但尚未发布

    gem 'nested_form', :github => 'ryanb/nested_form'