Не удается добавить дополнительные данные к вызову jquery-fileupload

Я пытаюсь интегрировать функции загрузки файлов в мое приложение Django, используя jQuery File Upload Plugin который можно найти здесь. Теперь я уже присоединяюсь csrf token с тегом ввода в шаблоне так:

<input id="fileupload" type="file" name="document" multiple
               style="display: none;"
               data-url="{% url 'upload' %}"
               data-form-data='{"csrfmiddlewaretoken": "{{ csrf_token }}"}'>

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

$("#fileupload").fileupload({
    dataType: 'json',
    formData: {employee_id: get_selected_employee()},
    done: function (e, data) {  
        }
    }
});

Однако эти новые данные не добавляются в formData, которая уже создана в шаблоне и содержит csrf_token,

Если я попытаюсь добавить токен csrf и employee_id в .fileupload позвони я получаю 403 (CSRF token missing or incorrect) хотя токен csrf кажется действительным. Я не могу добавить employee_id в шаблон, так как он динамически меняется. У кого-нибудь есть мысли?

1 ответ

Решение

Я динамически добавляю данные в data-form-dataтак это выглядело примерно так:

data-form-data='{"csrfmiddlewaretoken": "{{ csrf_token }}", "employee_id": "<employee_id>"}'

Однако у меня было несколько других проблем с jQuery File Upload, поэтому решил переключиться на Dropzone, мне потребовалось 3 часа, чтобы настроить все, в то время как я потратил 3 дня, пытаясь интегрировать jQuery File Upload,

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