2014-02-23 62 views
0

我使用载波进行图像上传和测试目的我不想使用s3存储。无s3存储的载波

这是carrierwave.rb文件

CarrierWave.configure do |config| 
    config.permissions = 0666 
    config.directory_permissions = 0777 
    config.fog_directory = 'xxx-development' 
    config.storage = :file 
    config.enable_processing = false 
end 

而在ImageUploader类我有

storage :file 

def store_dir 
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 
end 

version :thumb do 
    process resize_to_fill: [300, 300] 
end 

当我推到Heroku的,我得到以下错误:

rake aborted! 
Fog provider can't be blank, Fog directory can't be blank 

我做错了什么?

+0

不知道是什么你,但如果你不想S3和想要的文件上传到服务器,而不是你为什么要提的'config.fog_directory',也什么是'uploader'文件中所提供的存储选项 – Viren

+0

@Viren编辑该问题请检查 – Ajey

回答

1

如果你想要它的条件,也许在fog_directory设置一个环境条件?

CarrierWave.configure do |config| 
    config.permissions = 0666 
    config.directory_permissions = 0777 
    config.fog_directory = 'xxx-development' unless Rails.env.development? 
    config.storage = :file 
    config.enable_processing = false 
end 
+0

它在开发中运行良好,但会产生错误。除此之外的其他原因? – Ajey

+0

啊,想想看,你有上传器设置的方式,它可能仍然在等待生产雾储存。所以你可能需要在你的上传器中添加一个环境检查。 – agmcleod