[Django] Json 형식 데이터 입력받기

[Django] Json 형식 데이터 입력받기

{ "lift_id":1, "lift_status" : "비정상", "lift_errors" : { "errCode" : "121", "datetime" : "2021-10-26 20:24:31" } }

위와 같이 post를 보내는 경우 data에서 값을 지정해 줄때는 다음과 같이 지정해야한다.

data['lift_errors']['errCode']

# Error class ErrorView(View): def post(self, request): data = json.loads(request.body) # Lift.objects.update(lift_id=data['lift_id']).save() -> 타 테이블 참조. 해당 예의 경우 pk로 변경 불가능함 lift = Lift.objects.filter(lift_id=data['lift_id']).values() lift.update(lift_status=data['lift_status'],updated_at=datetime.now()) #동일한 lift id 가진 lift table의 상태 변경 json_obj = {'errCode': data['lift_errors']['errCode'], 'datetime': data['lift_errors']['errCode']} Lifterrs.objects.create(lift_id =data['lift_id'], lift_errors = json_obj).save() # Reply.objects.create(user_id = request.user.uid, post_id = data['post_id'] , content = data['content']).save() return HttpResponse(status=200) def get(self, request): #liftId = request.GET['lift_id'] err_data = Lifterrs.objects.values() #전체 조회 #err_list = Lifterr.objects.filter(lift_id=liftId).values() return JsonResponse({'content': list(err_data)}, status=200)

from http://haninothoney.tistory.com/144 by ccl(A) rewrite - 2021-11-02 22:27:14