Amazon S3路径或to_file不起作用

时间:2010-10-24 22:28:23

标签: ruby-on-rails heroku paperclip

嘿伙计们我的模型中有以下代码

要求'RMagick'

class Upload<的ActiveRecord :: Base的     belongs_to:卡

has_attached_file :photo,
                  :styles => {
                    :thumb => ["100x100", :jpg],
                    :pagesize => ["500x400", :jpg],
                  },
                  :storage => :s3,
                      :s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
                      :path => ":attachment/:id/:style.:extension",
                      :bucket => 'your_deck',
                  :default_style => :pagesize

attr_accessor :x1, :y1, :width, :height

def update_attributes(att)

  scaled_img = Magick::ImageList.new(self.photo.path)
  orig_img = Magick::ImageList.new(self.photo.path(:original))
  scale = orig_img.columns.to_f / scaled_img.columns

  args = [ att[:x1], att[:y1], att[:width], att[:height] ]
  args = args.collect { |a| a.to_i * scale }

  orig_img.crop!(*args)
  orig_img.write(self.photo.path(:original))

  self.photo.reprocess!
  self.save

  super(att)
end

这段代码离线工作但是当在Heroku上使用Amazon S3时它无法正常工作,我已尝试使用to_file进行代码并且它也无法正常工作

我收到以下错误

无法将Array转换为String

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,这是由于回形针update造成的。我很惊讶heroku仍在使用这个宝石版本,因为它肯定会影响他们的所有用户;我安装了以前的版本作为插件,没关系。不要忘记从.gems文件中删除gem或在gems清单中指定以前的版本。