Django: RecursionError: превышена максимальная глубина рекурсии при вызове объекта Python

Я пытаюсь создать суперпользователя, используя python manage.py createsuperuser. Я получил RecursionError: maximum recursion depth exceeded while calling a Python object.

Models.py

import datetime
from django.db import models
import uuid
from django.contrib.auth.models import AbstractBaseUser, PermissionsMixin, BaseUserManager

class UserManager(BaseUserManager):
# Creating Super User
    def create_superuser(self, first_name, last_name, 
                         email, password, **kwargs):
                     
        kwargs.setdefault('is_admin', True)
        kwargs.setdefault('is_staff', True)
        kwargs.setdefault('is_active', True)
        kwargs.setdefault('is_superuser', True)

        if kwargs.get('is_staff') is not True:
            raise ValueError(
                'Superuser must be assigned to is_staff=True'
            )
        if kwargs.get('is_superuser') is not True:
            raise ValueError(
                'Superuser must be assigned to is_superuser=True'
            )

        return self.create_superuser(first_name, last_name, 
                                 email, password, **kwargs)

    # Creating User
    def create_user(self, first_name, 
                    last_name, email, username,  
                    password, **kwargs):
        email = self.normalize_email(email)
    
        # User Object
        user = self.model(email=email, username=username, 
                          password=password, first_name=first_name, 
                          last_name=last_name, **kwargs)

        # Saving User
        user.save()
        return user

Admin.py

class UserAdmin(UserAdmin):
  model = User
  list_display=["first_name", "last_name", 
              "username", "email", "created_time", 
              "last_login"]
  list_filter = ['is_active', 'is_staff',]
admin.site.register(User, UserAdmin)

Ошибка

Traceback (most recent call last):
File "D:\Concept_and_Project\Web Development\BackEnd\Django 
 Framework\Template\template_layer\manage.py", line 22, in <module>
 main()
File "D:\Concept_and_Project\Web Development\BackEnd\Django 
 Framework\Template\template_layer\manage.py", line 18, in main
 execute_from_command_line(sys.argv)
File "D:\Concept_and_Project\Web Development\BackEnd\Django Framework\Template\lib\site- 
 packages\django\core\management\__init__.py", line 446, in execute_from_command_line
 utility.execute()
File "D:\Concept_and_Project\Web Development\BackEnd\Django Framework\Template\lib\site- 
 packages\django\core\management\__init__.py", line 440, in execute
 self.fetch_command(subcommand).run_from_argv(self.argv)
File "D:\Concept_and_Project\Web Development\BackEnd\Django Framework\Template\lib\site- 
 packages\django\core\management\base.py", line 402, in run_from_argv
 self.execute(*args, **cmd_options)
File "D:\Concept_and_Project\Web Development\BackEnd\Django Framework\Template\lib\site- 
 packages\django\contrib\auth\management\commands\createsuperuser.py", line 88, in execute
 return super().execute(*args, **options)
File "D:\Concept_and_Project\Web Development\BackEnd\Django Framework\Template\lib\site- 
 packages\django\core\management\base.py", line 448, in execute
 output = self.handle(*args, **options)
File "D:\Concept_and_Project\Web Development\BackEnd\Django Framework\Template\lib\site- 
 packages\django\contrib\auth\management\commands\createsuperuser.py", line 233, in handle
 self.UserModel._default_manager.db_manager(database).create_superuser(
File "D:\Concept_and_Project\Web Development\BackEnd\Django 
 Framework\Template\template_layer\Model\models.py", line 27, in create_superuser
 return self.create_superuser(first_name, last_name, 
File "D:\Concept_and_Project\Web Development\BackEnd\Django 
 Framework\Template\template_layer\Model\models.py", line 27, in create_superuser
 return self.create_superuser(first_name, last_name,
File "D:\Concept_and_Project\Web Development\BackEnd\Django 
 Framework\Template\template_layer\Model\models.py", line 27, in create_superuser
 return self.create_superuser(first_name, last_name,
[Previous line repeated 988 more times]
File "D:\Concept_and_Project\Web Development\BackEnd\Django 
 Framework\Template\template_layer\Model\models.py", line 13, in create_superuser
 kwargs.setdefault('is_admin', True)
RecursionError: maximum recursion depth exceeded while calling a Python object
Вернуться на верх