Изменить место локального хранения в refinerycms для загруженных файлов

Я использую refinerycms 1.0.9 и хотел бы изменить расположение по умолчанию, в котором стрекоза сохраняет файлы.

Вот мой dragonfly.rb в config/initializers:

require 'dragonfly'

app = Dragonfly[:app_name]
app.datastore = Dragonfly::DataStorage::FileDataStore.new

app.datastore.configure do |d|
  d.root_path = '/Projects/images'
  d.server_root = '/Projects'
  d.store_meta = false
end

Когда я сохраняю файл, я получаю следующую ошибку:

Dragonfly::Shell::CommandFailed (Command failed (identify '/var/folders/5t/mf86p8gx6bz94dzfb88xpvpr0000gn/T/RackMultipart20120328-6943-1vbpa7u') with exit status 127):

ОБНОВЛЕНИЕ

Я переустановил imagemagick, и это избавило от ошибки, однако файлы по-прежнему сохраняются в /system/images. Я попытался переопределить модель изображения на нефтеперерабатывающем заводе и добавил:

image_accessor :image do
   storage_path{ "/Projects/images/#{rand(100)}" }
end

но это тоже не сработало.


person Scott    schedule 28.03.2012    source источник


Ответы (1)


Судя по этому сообщению автора, вы хотите установить storage_path вариант в вашей модели (ах):

storage_path{ "some/path/#{first_name}/#{rand(100)}" } # or whatever you want it to be
person ScottJShea    schedule 28.03.2012
comment
Я добавил следующее в свою модель слайд-шоу image_accessor :photo do storage_path{ "slideshow/#{rand(100)}" } end И теперь я получаю эту ошибку неопределенного метода `photo_uid' для #‹Slideshow:0x007f8f54e16708› - person Scott; 28.03.2012
comment
В мою модель добавлен столбец photo_uid, и теперь я вернулся к исходной ошибке. - person Scott; 28.03.2012
comment
Ваша целевая папка существует? Я смутно припоминаю, что он должен существовать (с соответствующими разрешениями), прежде чем стрекоза сможет его использовать. - person Anita Graham; 30.03.2012