2010-03-28 1 views
0

J'ai un modèle qui utilise un trombone, en dev env je veux stocker des fichiers sur le système de fichiers.Rails diff config modèle dans l'environnement de développement ou de prod

En production, je veux les stocker sur mon compte s3.

Comment configurer mon modèle pour reflet de cette différence?

Voici mon modèle

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 

Répondre

1

La méthode rapide et sale est d'utiliser une simple déclaration 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 
Questions connexes