想知道是否有人可以帮助我设置带有数字海洋的机车。我在托管点,说明要求我修改 carrierwave.rb 文件中的生产块。目前,它是为 AWS 设置的。我需要做什么才能让数字海洋工作。
CarrierWave.configure do |config|
config.cache_dir = File.join(Rails.root, 'tmp', 'uploads')
case Rails.env.to_sym
when :development
config.storage = :file
config.root = File.join(Rails.root, 'public')
when :production
# the following configuration works for Amazon S3
config.storage = :fog
config.fog_credentials = {
provider: 'AWS',
aws_access_key_id: ENV['S3_KEY_ID'],
aws_secret_access_key: ENV['S3_SECRET_KEY'],
region: ENV['S3_BUCKET_REGION']
}
config.fog_directory = ENV['S3_BUCKET']
else
# settings for the local filesystem
config.storage = :file
config.root = File.join(Rails.root, 'public')
end
end
这取决于您要存储文件的位置; 如果您想将上传的文件放在快捷滴上,您可以从 :d evelopment 复制配置部分,我们的 LocomotiveCMS 解决方案就是这样做的,它工作正常,但是它不会很好地扩展,即如果您希望多个 Web 服务器可以访问上传的文件。
如果您将MongoDB与Mongoid的Carrierwave一起使用,那么您可以使用GridFS将文件存储在数据库中,但是我自己对此没有任何经验。您可以在Carrierwave Mongoid的GitHub页面上阅读更多相关信息。