2016-03-11 12 views
0

У меня есть куча изображений внутри папки моих ресурсов. Они классифицируются: имя папки совпадает с именем модели, которое представляет категорию. У меня нет борьбы, когда перечисляю их как галерею, но я прислушиваюсь к изменению каждого изображения. Я уже установил RMagick и Carrierwave. Я настроил ImageUploader класс:Carrierwave: изменение размера изображений из активов

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 :thumb do 
    process :resize_to_fill => [128, 128] 
    end 
end 

я добавил колонку к моей модели и развернул загрузчик:

# from db/schema.rb 
# path leads to an image inside assets folder 
create_table "foos", force: :cascade do |t| 
    t.string "path",  null: false 
    t.datetime "created_at", null: false 
    t.datetime "updated_at", null: false 
    t.string "image" 
end 
# app/models 
class Foo < ActiveRecord::Base 
    mount_uploader :image, ImageUploader 
end 

Я пытался использовать image_tag foo.image_url(:thumb) в моем шаблоне, но он не работает. Что я упустил?

+0

Вам нужны реальные записи в базе данных с именами файлов для этой модели и этих идентификаторов. – Babar

+0

@Babar У меня уже есть фактические записи с URL-адресами для каждого из файлов. – DreamWalker

ответ

0

попробовать это

<%= image_tag @foo.image.thumb.url %> 
Смежные вопросы