#ruby-on-rails #paperclip
#ruby-on-rails #скрепка
Вопрос:
У меня была система, которая работала нормально целую вечность, используя Rails 3 и Paperclip 2.3.6 для изображений участников.
class Image < ActiveRecord::Base
belongs_to :business
has_attached_file :data, :styles => {:normal => ["665x443#", :jpg],:thumb => ["104x50#", :jpg]}, :convert_options => {:all => "-channel RGB -strip -quality 80"}
end
Теперь по какой-то причине маршрут для изображений изменился на /system/data / вместо предыдущего /system/datas /
Я не могу понять, что произошло. Все изображения по-прежнему находятся в /system /datas /, и участник загрузил несколько новых изображений, а Paperclip поместил их в /system / data/
У кого-нибудь есть идеи, что случилось? Я не могу понять это. Спасибо.
РЕДАКТИРОВАТЬ: Хорошо, у меня все еще был тестовый блок на Rails 3.0.3. Моя версия выпуска была на 3.0.7. Если я вернусь к Rails 3.0.3, он снова заработает — путь / system / data / снова станет / system / datas / .
Ответ №1:
В Rails 3.0.5 были введены некоторые дополнительные перегибы, которые означали, что ‘datas’ больше не используется как множественное число от ‘data’, что нарушило именование каталога для Paperclip!
Ответ №2:
Согласно документации paperclip, вы можете указать путь для сохранения изображений в вашей модели, используя опцию :path и указав путь.
Документацию можно найти здесь.
Комментарии:
1. Хорошо, спасибо. Тем не менее, я пытаюсь выяснить, что изменилось. Rails обновляется и теперь 3.0.7, но Paperclip заблокирован на 2.3.6. Итак, почему у меня сейчас проблема с каталогом, когда он работал нормально?
2. Интересно, показал бы вам, что произошло, если бы после его взлома после обновления до 3.0.5 git bisect показал бы вам, что произошло.