2012-06-07 67 views
4

我有一个运行ActiveAdmin并使用CarrierWave上传图片的ROR应用程序。我有一个模型:产品,它允许多个ProductImages。在添加新产品并选择几张图片上传时,所有这些似乎都很顺利。但是,一旦我想修改该产品的形象似乎并没有真正被上传,再加上我得到以下错误:ROR + ActiveAdmin + Carrierwave,上传多张图片后编辑

​​

我的假设是,最初上传并没有做太多和为此结束了空在编辑上。

这里是管理形式的一个片段:

ActiveAdmin.register Product do 
    form(:html => {:multipart => true}) do |f| 
    f.inputs "Details" do 
     f.input :name 
     f.input :descr, :label => "Description" 
     f.input :brand, :as => :select, :collection => Brand.all, :member_label => :name, :label => "Brand" 

     # tags 
     f.autocomplete_field :tag_list, '/products/autocomplete_tag_name', :"data-delimiter" => ', ' 
     f.input :tag_list, :hint => "Comma delimited tags" 
    end 

    f.has_many :product_images do |pi| 
     pi.inputs "Product Images" do 
     if !pi.object.nil? 
      pi.input :_destroy, :as => :boolean, :label => 'Destroy?' 
     end 
     pi.input :image_name 
     pi.input :image 
     end 
    end 
    f.buttons 
    end 
end 

编辑

我知道一两件事,图像做得到上载创作的帖子,其从编辑行为up ..

+1

我目前有同样的问题 - 你找到任何解决方案吗? :/ – mrmnmly

+0

同样的问题...不能删除后添加..任何运气? – Danpe

回答

0

前段时间我有同样的问题(但与Paperclip)。解决方案(不明显)是如果用户未在编辑表单中提供密码以确认更新,则图像未更新。

因此,如果您没有尝试此操作,可能值得:在编辑产品时要求用户输入密码,然后查看图像是否被正确更新。

+0

嗯。这听起来是unistcary – Kasper

0

我最近遇到这个问题。 请更新您的表单字段,如下所示。您必须将输入字段设置为文件。

pi.input :image, :as => :file