Отправка файла в 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