Переменные сборки, использующие имя поля формы на основе его имени файла в Transloadit

В настоящее время я работаю над загрузкой нескольких файлов с каждым сгенерированным именем, пропущенным через поля формы. Проблема, с которой я столкнулся сейчас, заключается в том, что, поскольку я загружаю несколько файлов, мне понадобятся динамические поля формы.

например, загрузка одного изображения - у меня нет проблем

HTML

<input type="hidden" name="item-id" id="item-id" value="1234">
<input type="hidden" name="fileName" id="fileName" value="zeahgvyg">

шаблон

 "store_original": {
   "robot": "/s3/store",
   "use": [
     ":original"
   ],
   "key": "xxxxxxxxxx",
   "secret": "xxxxxxx",
   "bucket": "mybucket",
   "path": "${fields.item-id}/${fields.fileName}_original.${file.ext}"
 },

Путь к файлу:

1234/zeahgvyg_original.jpg

Сейчас загружаю несколько изображений - что у меня сейчас проблема

Поскольку количество файлов зависит от пользователя, я собираюсь проверить это через JS и добавить поля формы с их сгенерированными именами.

JS

// fileuploaded : cat_thumbnail.jpg
// then process to get file basename
// fileName = cat_thumbnail

var fileGeneratedName = "newfilename"; 
var newInput = $("<input type='hidden' name='"+fileName+"' id='"+fileName+"' value='"+fileGeneratedName+"'/>");
$('#hiddenFileNames').append(newInput);

шаблон

 "store_original": {
   "robot": "/s3/store",
   "use": [
     ":original"
   ],
   "key": "xxxxxxxxxx",
   "secret": "xxxxxxx",
   "bucket": "mybucket",
   "path": "${fields.item-id}/${fields.${file.basename}}_original.${file.ext}"
 },

Очевидно, что линия, которая не сработала, это

   "path": "${fields.item-id}/${fields.${file.basename}}_original.${file.ext}"

Теперь у меня вопрос: как мне вызвать поле формы, основанное на имени файла?

ссылка на другие переменные: https://transloadit.com/docs

${file.ext} and ${file.basename}

1 ответ

Решение

Выступая в качестве соучредителя, Transloadit запустил эту функцию, как вы описали 15 декабря 2014 года.

Другие вопросы по тегам