2014-09-11 2 views
0
belongs_to :attachable, :polymorphic => true 

    ## Paperclip with amazone s3 
    has_attached_file :avatar, 
    :storage => :s3, 
    :s3_credentials => "#{Rails.root}/config/amazon_s3.yml", 
    :path => "/notes/:id/:filename" 

В настоящее время мой путь/примечание /: идентификатор /: имя файлСделать Выборочный: Путь для Скрепка

Но я хочу, чтобы мой путь, как с прикрепляться, потому что это полиморфные отношения

, а также год мудрым.

как: /: присоединяемый /: год /: идентификатор /: имя файла

ответ

0

Наконец я получил решение

Я делаю это следующим образом

Paperclip.interpolates :attached_to do |attachment, style| 
    attachment.instance.attachable.class.to_s.downcase 
    end 

    Paperclip.interpolates :year do |attachment, style| 
    Time.now.year.to_s.downcase 
    end 

    ## Paperclip with amazone s3 
    has_attached_file :avatar, 
    :storage => :s3, 
    :s3_credentials => "#{Rails.root}/config/amazon_s3.yml", 
    :path => "/:attached_to/:year/:id/:filename" 
-1

Используйте :attachable_type на своем пути. Это будет строка с именем класса привязные:

:path => '/:attachable_type/:year/:id/:filename' 
Смежные вопросы