У меня есть приложение для рельсов, в которое пользователи могут загружать фотографии. Фотографии загружаются в ковш Amazon S3. У меня есть «Contributor», у которого много «листингов», в «Листинг» много «изображений». То, что я хотел бы, чтобы загрузить все изображения этого типа каталога:Amazon s3- Paperclip не может загружать изображения на правильный путь
:contributor_id/:listing_id/IMAGES_HERE.jpg
Я хотел бы также, как это так, что если участник создает еще один список, он не создает целую всю новую папку для этого вкладчик. Я хочу, чтобы он загружал его в уже созданную папку с идентификатором участника.
Любые мысли о том, как я могу это достичь? Вот что мой текущий: путь выглядит
has_attached_file :asset,
:styles => {:large => "640x480", :medium => "300x300", :thumb => "100x100" },
:storage => :s3,
:s3_credentials => "#{Rails.root}/config/s3.yml",
:path => "/:contributor_id/:id/:filename"
ОТВЕТ:
спасибо за ваши ответы. вот как я получил его на работу, используя функцию Interpolations в Paperclip.
Paperclip.interpolates('contributor_id') do |attachment, style|
attachment.instance.listing.contributor_id
end
Paperclip.interpolates('listing_name') do |attachment, style|
attachment.instance.listing.title.parameterize
end
А потом мой путь ..
:path => "/:contributor_id/:listing_name/:filename"
Вы правильно настроили s3.yml? – swati
Да, этот файл настроен правильно. У меня нет проблем с загрузкой загрузок. Я просто ищу, как я могу настроить структуру каталогов загрузки, на которую они загружаются, и как не создавать дубликаты имен папок на основе идентификатора участника. – kcollignon