Чтение 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)