Rails在dev或prod环境中进行diff模型配置

时间:2010-03-28 14:55:48

标签: ruby-on-rails

我有一个使用paperclip的模型,在dev env中我想在文件系统上存储文件。

在制作中我想将它们存储在我的s3帐户中。

如何配置我的模型以重现这种差异?

这是我的模特

class Photo < ActiveRecord::Base
  has_attached_file :photo, :styles => { :medium => "200x200>", :thumb => "100x100>" },
                    :storage => :s3, 
                    :s3_credentials => "#{Rails.root}/config/s3.yml", 
                    :path => "/:style/:filename"
end

1 个答案:

答案 0 :(得分:1)

快速而肮脏的方法是使用简单的if语句:

class Photo < ActiveRecord::Base
  if Rails.env.production?
    has_attached_file :photo, :styles => { :medium => "200x200>", :thumb => "100x100>" },
                      :storage => :s3, 
                      :s3_credentials => "#{Rails.root}/config/s3.yml", 
                      :path => "/:style/:filename"
  else
    # store them locally
  end
end