Я использую гем несущей с Rmagick в приложении Rails.Я установил новую версию в своем файле загрузчика:
class ImageUploader < CarrierWave::Uploader::Base
include CarrierWave::RMagick
storage :file
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :preview do
process :resize_to_fill => [580, 350]
end
end
Конечно, я включил rmagick и carrierwave в свой gemfile.Теперь я пытаюсь загрузить версию моих изображений preview в моих представлениях:
@product.photos.first.image.preview
Это не дает никаких ошибок, но загружает испорченное изображение.Если я копирую URL-адрес изображения, я получаю ошибку маршрутизации («нет маршрута соответствует /path/to_my_imagesfolder/preview_image.png»).Если я удалю метод preview , изображение загрузится правильно.
В чем может быть проблема?Я подумал, может быть, это проблема с разрешениями, но я установил папку для загрузки с 777, и она все еще не работает.
Есть идеи?
РЕДАКТИРОВАТЬ: Я понял, если я загружаюизображения снова новые версии создаются.Можно ли заставить Rmagick создавать их при запросе (как это делает TimThumb в PHP)? Или, по крайней мере, есть какая-либо команда для пакетного создания всех версий?
Должен быть лучший способ, чем загрузка всех изображений...