2010-10-27 18 views
2

Est-ce que quelqu'un sait comment je peux configurer mon modèle de rails, qui utilise un trombone pour le stockage de données, pour utiliser des répertoires de date de création comme par exemple dans fleximage?RAILS: trombone et date de création basée sur la structure du répertoire

À l'heure actuelle, je suis en utilisant:

has_attached_file :bookblock, :path => "#{CONF['storage_path']}bookblock/:id_partition/:style.:content_type_ehas_attached_filextension" 

mais ce que j'ai besoin est quelque chose comme ça

has_attached_file :bookblock, :path => "# {CONF['storage_path']}bookblock/:created_at_year/:created_at_month/:created_at_day/:c:id_partition/:style.:content_type_ehas_attached_filextension" 

simple: created_at dans le chemin du répertoire serait également utile

{CONF['storage_path']}/:created_at/bookblock/:id_partition/:style.:content_type_ehas_attached_filextension" 

Merci d'avance,

Alex

Répondre

4

Vous pouvez ajouter vos propres interpolations à Paperclip. Pour donner un exemple simple:

Paperclip.interpolates :year do |attachment, style| 
    attachment.instance.created_at.year 
end 

Maintenant, vous pouvez utiliser :year dans l'option :path comme ceci:

has_attached_file :bookblock, :path => "#{CONF['storage_path']}bookblock/:year/:id/:style.:content_type_ehas_attached_filextension" 

Vous pouvez définir trois interpolations: :year, :month et :day, ou tout simplement un qui retourne la chaîne de l'année entière/mois/jour.

+0

merci beaucoup;) maintenant que je connais le nom "interpolation", j'ai pu tout trouver sur: https://github.com/thoughtbot/paperclip/wiki/Interpolations –