我使用的是Paperclip,这段代码和aws-s3
gem一起允许我使用AmazonS3:存储上传的文件
has_attached_file :photo,
:styles => {
:tiny => "25x25#",
:shown => "40x40#",
:thumbnail => "50x50#",
:small => "150x150>",
:medium => "300x300>" },
:default_url => "/images/default_:style.jpg",
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:path => "profile/:attachment/:style/:id.:extension"
然而,当我处于开发环境中时,我不想在AmazonS3上存储文件。如何在我的应用程序中设置?
你可能会做一些类似的事情
:storage => Rails.env.production? ? :s3 : :whatever
在环境的尽头.rb:
APP_CONFIG = YAML.load_file("#{Rails.root.to_s}/config/config.yml")[Rails.env]
在config/config.yml:中
development:
use_amazon: false
test:
use_amazon: false
production:
use_amazon: true
在你的控制器中:
if APP_CONFIG['use_amazon']
#USING AMAZON S3
else
#USING SOMETHING ELSE
end
这应该行得通。祝你好运