def test_usermodelserializer_update_not_allowed(self): """Checks User instance update using UserModelSerializer Tests if UserModelSerializer update is invalid due to update not allowed.""" serializer = UserModelSerializer(self.user, data=self.data) serializer.is_valid() test_case_message = ('UserModelSerializer should not attempt to update' ' User instance.') with self.assertRaises(ValidationError, msg=test_case_message): serializer.save()
def user_detail(request, pk): try: user = UserModel.objects.get(pk=pk) except UserModel.DoesNotExist: return HttpResponse(status=404) if request.method == 'GET': serializer = UserModelSerializer(user) return JsonResponse(serializer.data, json_dumps_params={'ensure_ascii': False}) elif request.method == 'PUT': serializer = UserModelSerializer(user, data=request.data, partial=True) if serializer.is_valid(): serializer.save() return JsonResponse(serializer.data) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) elif request.method == 'DELETE': user.delete() return HttpResponse(status=204)
def user_list(request): if request.method == 'GET': users = UserModel.objects.all() serializer = UserModelSerializer(users, many=True) return JsonResponse(serializer.data, safe=False, json_dumps_params={'ensure_ascii': False}) elif request.method == 'POST': data = JSONParser().parse(request) data['color'] = "#" + \ ''.join([random.choice('0123456789ABCDEF') for j in range(6)]) serializer = UserModelSerializer(data=data) if serializer.is_valid(): serializer.save() return JsonResponse(serializer.data, status=201, json_dumps_params={'ensure_ascii': False}) return JsonResponse(serializer.errors, status=400)