0

Carrierwave で画像を複製する方法がありますが、Validation failed: Image could not download file実行するとエラーが発生します。Invoice のコピーを作成し、関連する画像を調べて、それらを remote_image_url として設定し、再アップロードする必要があります。

画像の URL の末尾に AccessKey 情報があることが関係していると思います。何か案が?

  def self.duplicate_it(invoice)

    new_invoice = invoice.dup
    new_invoice.save

    if invoice.images.any?
      invoice.images.each do |i|
        temp_image = i.image

        new_image = Image.new(:remote_image_url => temp_image.to_s, :order_id => new_invoice.id)
        new_image.save!
      end
    end 

  end
4

1 に答える 1

0

これはうまくいきました

new_invoice = invoice.dup :include => {:lineitems => :images} do |original, kopy|
  kopy.image = original.image if kopy.is_a?(Image)
end 
于 2013-01-06T22:15:33.460 に答える