JQuery: публикация файлов с объектами FormData - PullRequest
0 голосов
/ 09 апреля 2020

Так что я использую ModelForm для обновления и хочу добавить некоторые файлы, используя Javascript FormData-Object, отправляя всю форму, используя JQuery.

Кажется, что файлы изображений не публикуется.

views.py :

class SowiUpdateView(UserPassesTestMixin, LoginRequiredMixin, UpdateView):

    def post(self, request, *args, **kwargs):
        print(request.POST)
        return super(SowiUpdateView, self).post(request, *args, **kwargs)

javascript:

var formData = new FormData(document.getElementById("form_id"));

for (var i = 0, len = filesToUpload.length; i < len; i++) { // filesToUpoad is a List containing a dict, with file i access the file
    formData.append("files", filesToUpload[i].file);
}

$.ajax({
    headers: { "X-CSRFToken": getCookie("csrftoken") },
    url: "{% url 'sowi-update' object.id %}",
    data: formData,
    contentType: false,
    processData: false,
    async: false,
    method: 'POST',
    type: 'POST',
    success: function (data) {
        // console.log(data);
    },
    error: function (data) {
        console.log("ERROR - " + data.responseText);
    }
});

Странно сервер-пост-данные-выход выдает все данные FormData, но объект "файлы". Что не так? Я пытался просто добавить строку вместо файла, и это сработало.

Спасибо за вашу помощь !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...