0

嗨,我的应用程序在使用 :file 时在本地运行良好,但是一旦我推送到 heroku 并使用 S3,我在尝试上传时收到此错误。它看起来是 def 文件名方法的问题。

heroku 日志显示:

 NoMethodError (undefined method `extension' for #<CarrierWave::Storage::S3::File:0x00000006316a90>):
 app/uploaders/image_uploader.rb:53:in `filename'

这就是我在上传器中定义文件名的方式:

  def filename
       "image.#{model.image.file.extension}" if original_filename
     end

我怎样才能解决这个问题?谢谢!

4

1 回答 1

5

试试这个:

def filename
  "image.#{File.extname(original_filename).downcase}" if original_filename
end
于 2011-06-24T01:40:44.977 回答