TypeError: неподдерживаемый тип(ы) операнда для ** или pow(): 'bool' и 'dict' [закрыто]

Я использую Django и пытаюсь реализовать создание пользователя с помощью словарей, парсируемых из JSON. Однако я продолжаю получать ошибку типа, поскольку пользователь не создан, но на самом деле пользователь создан.


class SignupView(ReactView):
    def post(self, request, *args, **kwargs):
        field_names = ["username", "first_name", "last_name", "email", "password"]
        try:
            self.body = json.loads(request.body)
        except JSONDecodeError:
            return JsonResponse({"error": "Data must be in JSON"})
        except RawPostDataException:
            return JsonResponse({"error": "Data must be application/json"})
        if not any(field in self.body for field in field_names):
            return JsonResponse({"error": "Missing fields"})
        else:
            try:
                user = UserModel(**self.body) # Line where I pass body as kwargs
                user.set_password(self.body.get("password"))
                user.full_clean() # Will ideally throw TypeError if fields are invalid
                user.save()
                return JsonResponse({"success": "User was created"})
            except TypeError as err:
                return JsonResponse(
                    {
                        "error": "unexpected parametes. Allowed parameters are {}".format(
                            field_names
                        ) # THIS RUNS WITH EVERY POST REQUEST I MAKE FOR USER CREATION IF SUCCESSFUL
                    }
                )
            except ValidationError as e:
                return JsonResponse({"error": str(e)})

Как оповестить абонента о том, что пользователь был создан?

При получении ошибки в вызывающем устройстве выполняется другой набор действий.

EDIT

Трассировка показала, что ошибку выбрасывает метод save(), а ошибка была в моем сигнале signal(post_save), который отправлял сообщения пользователям. Я забыл запятую, как показано ниже

...
            """Send an email to this user."""
            send_mail(
                subject=subject,
                message=message,
                from_email=from_email,
                recipient_list=[self.email],
                html_message=html_message,
                fail_silently=False ** kwargs,
            )
...
Вернуться на верх