Локальная переменная 'utilisateurs_serializer' ссылается перед присвоением
` @api_view(['GET', 'POST', 'DELETE']) def user_list(request):
if request.method == 'GET':
utilisateurs = Utilisateur.objects.all()
firstname = request.GET.get('firstname', None)
if firstname is not None:
utilisateurs = utilisateurs.filter(firstname__icontains=firstname)
utilisateurs_serializer = UtilisateurSerializer(utilisateurs, many=True)
return JsonResponse(utilisateurs_serializer.data, safe=False)
elif request.method == 'POST':
utilisateur_data = JSONParser().parse(request)
utilisateur_serializer = UtilisateurSerializer(data=utilisateur_data)
if utilisateur_serializer.is_valid():
utilisateur_serializer.save()
return JsonResponse(utilisateur_serializer.data, status=status.HTTP_201_CREATED)
return JsonResponse(utilisateur_serializer.errors, status=status.HTTP_400_BAD_REQUEST)
В блоке GET
существует utilisateurs_serializer
, который не присваивается за его пределами!
Вы можете вернуть 404 Not Found
ошибку:
@api_view(['GET', 'POST', 'DELETE'])
def utilisateur_list(request):
if request.method == 'GET':
firstname = request.GET.get('firstname', None)
if firstname is not None:
utilisateurs = Utilisateur.objects.all()
utilisateurs = utilisateurs.filter(firstname__icontains=firstname)
utilisateurs_serializer = UtilisateurSerializer(utilisateurs, many=True)
return JsonResponse(utilisateurs_serializer.data, safe=False)
return JsonResponse(status=404)
...