Получить данные из json данных формы и сохранить в базе данных в django - PullRequest
0 голосов
/ 12 апреля 2020

Мой JSON файл: (Это файл)

{"user-id": 10009, "rating": 3, "movie_id": 9823}

Мне нужно получить каждый данные отдельно. так что я могу хранить их в базе данных. файл JSON представляет собой данные формы.

Я пытался:

    def post(self, request):

        data = request.FILES['json_file']
        # a = data.read().decode('utf-8')
        a = json.loads(data)
        x = a['user-id']
        print(x)

    return Response(x, status=status.HTTP_201_CREATED)

Приведенный выше код не работает и выдает ошибку:

the JSON object must be str, not 'InMemoryUploadedFile'

Как могу ли я получить данные из файла JSON (форма-данные) и сохранить его содержимое в базе данных?

enter image description here

1 Ответ

0 голосов
/ 12 апреля 2020

data относится к типу InMemoryUploadedFile, поэтому для преобразования его в строку необходимо прочитать ее (в байтах) и преобразовать в строку:

 def post(self, request):

        data = request.data.get('json_file')
        a = json.loads(str(data.read()))
        x = a['user-id']
        print(x)

    return Response(x, status=status.HTTP_201_CREATED)


...