Как быстро загрузить файл на конечную точку Django REST?
Я использую Django REST framework для загрузки большого файла csv и извлечения данных из файла и сохранения их в данных. Под большим файлом я подразумеваю файл размером от 10 до 50мб, но когда я загружаю файл, это занимает гораздо больше времени, чем ожидалось, от 10 до 15 минут, но конечная точка продолжает обработку и не возвращает ответ, вот как выглядит мой views.py:
from asyncore import read
from django.shortcuts import render
from rest_framework.views import APIView
from rest_framework.decorators import api_view
from rest_framework.parsers import MultiPartParser, FormParser
from rest_framework.response import Response
import pandas as pd
from .models import ExtractedData
from .urls import urlpatterns
from django.urls import path
# Create your views here.
class FileUploadView(APIView):
parser_classes = ( MultiPartParser, FormParser)
def put(self, request, format=None):
file_obj = request.FILES['file']
df = pd.read_csv(file_obj)
dict_data = df.to_dict(orient='records')
for dict in dict_data:
ExtractedData.objects.get_or_create(data=dict)
return Response({'details':"File Saved Succesfully"}, status=204)