Я хочу использовать то же имя файла, но другой каталог для версии моего загруженного файла.
upload file imageName.jpg should create
uploads/drawing/2018/imageName.jpg #which is the original file
uploads/thumbs/2018/imageName.jpg #a 120 x 100 scaled version of the original file
В моем: class DrawingUploader
Я переопределяю метод store_dir, который правильно сохраняет мой загруженный файл imageName.jpg в uploads / drawing / 2018
def store_dir
"uploads/drawings/2018"
end
Затем я создаю уменьшенную версию и хочу указать имя файла, чтобы оно совпадало с оригиналом (без добавления «большого пальца») и каталогом для него.Имя файла работает с полным_файлом, но store_dir - нет.
version :thumb do
process resize_to_fit: [120, 100]
def store_dir (for_file = model.drawing.file)
"uploads/thumbs/2018"
end
def full_filename (for_file = model.drawing.file)
"imageName.jpg"
end
end
. Этот файл 120x100 хранится в файлах uploads / drawing / 2018 / imageName.jpg
Он по-прежнему использует store_dir (чертежне превью) определено до версии.
Больше информации из моих тестов:
, если файл uploads / drawing / 2018 / imageName.jpg уже существует при вызове загрузчика, определение store_dir, определенное в версии, работает правильно и помещает файл вuploads / thumbs / 2018 / imageName.jpg
, если в версиях используется только полное имя_файла, но я включаю путь для указанного имени файла, он размещает этот путь внутри пути, который последний раз использовал загрузчик, так:
version :thumb do
process resize_to_fit: [120, 100]
def full_filename (for_file = model.drawing.file)
"uploads/thumbs/2018/imageName.jpg"
end
end
создает файл в uploads / drawing / 2018 / uploads / thumbs / 2018 / imageName.jpg
, и если я пытаюсь указать относительный путь, он правильно создает каталоги, но никогда не записывает файл версии -- папки просто пусты
version :thumb do
process resize_to_fit: [120, 100]
def store_dir (for_file = model.drawing.file)
"../../uploads/thumbs/2018"
end
def full_filename (for_file = model.drawing.file)
"imageName.jpg"
end
end
создает пустой каталог на uploads / drawing / 2018, файл imageName.jpg не записывается