Чтение CSV-файла из почтового запроса

Я пытаюсь получить данные из файла CSV, но когда я пытаюсь прочитать файл с помощью метода folwing, я получаю ошибку

Ошибка значения: Операция ввода/вывода в закрытый файл.

def post(self, request):
        serializer = MosqueFileSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            file =pd.read_csv(request.FILES['file'])
        return Response(status=status.HTTP_200_OK)

и когда я пытаюсь открыть файл, я получаю другую ошибку

TypeError: ожидался объект str, bytes или os.PathLike, а не InMemoryUploadedFile

def post(self, request):
        serializer = MosqueFileSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            file =pd.read_csv(open(request.FILES['file']))
        return Response(status=status.HTTP_200_OK)

может кто-нибудь помочь мне найти решение?

Согласно документации, указатель файла объекта InMemoryUploadedFile находится на его атрибуте .file. Функция open возвращает сам объект InMemoryUploadedFile.

Я предлагаю вам попробовать

open(request.FILES['file'])
file = pd.read_csv(request.FILES['file'].file)
Вернуться на верх