Отправка файла в django rest с помощью ajax

В моем проекте я использую ajax для отправки данных формы на back-end (django rest framework). но когда я вижу request.data, поле image пустое. но другие поля в порядке.

js(img - входной файл):

        $.ajax({
            method: 'POST',
            url: '/step5/send/',
            contentType: 'application/json',
            data: JSON.stringify({"date": date, "hour": time, "price": price, "document": img, "id": {{user.id}} }),
            success: function (res) {
                console.log(res);
            }, error: function (err) {
                console.log(err);
            }
        });

view:

@api_view(["POST"])
def step5_get_pay(request):
    date = request.data.get("date")
    hour = request.data.get("hour")
    price = request.data.get("price")
    document = request.data.get('document')
    id_ = request.data.get("id")

    user = User.objects.get(id=id_)
    Step5.objects.create(date=date, hour=hour, price=price, document=document, user=user)

    data = {
        "data": request.data,
    }
    return Response(data=data, status=200)

и данные: {date: '1401-11-14', hour: '10:10:10', price: '500', document: {...}, id: 1}

Документ находится в request.data, но я думаю, что он должен быть в request.FILES а в модели это save {} (empty)

введите описание изображения здесь введите описание изображения здесь

отправка формы с файловым вводом с помощью ajax и django rest

Вернуться на верх