Невозможно создать суперпользователя в Django, используя пользовательского пользователя

Я получил эту ошибку, когда попытался запустить manage.py createsuperuser

TypeError: UserManager.create_superuser() отсутствует 1 обязательный позиционный аргумент: 'username'

Моя модель пользователя:

class User(AbstractUser):
    name = models.CharField(max_length=32)
    email = models.CharField(max_length=140,  unique=True)
    password = models.CharField(max_length=140)
    username = None

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = []

и в моем файле settings.py:

AUTH_USER_MODEL = 'usuarios.User'

Как я могу решить эту проблему? Я новичок в Django, документация меня смущает...

Я уже пробовал удалить AUTH_USER_MODEL = 'usuarios.User' или удалить атрибут username из класса User

Для создания суперпользователя с пользовательской моделью пользователя, как описано выше, вам необходимо реализовать метод create_superuser в пользовательском классе UserManager, как показано ниже, и вам нужно указать поле username в пользовательской модели пользователя, как показано ниже. Затем укажите пользовательскую модель пользователя в настройках

class User(AbstractBaseUser,PermissionsMixin):

   name = models.CharField(max_length=255,null=True,blank=True)
   mobile = models.CharField("Mobile No",max_length=10,unique=True)
   is_active = models.BooleanField(default=True)
   
   objects = CustUserManager()     # custom object manager
   USERNAME_FIELD = 'mobile'   # custom username field (**in this case mobile**)

 class CustUserManager(BaseUserManager):

   def create_superuser(self,mobile,password=None,**extra_fields):
     user = self.create_user(mobile,password)
     user.is_superuser = True
     user.save(using=self._db)
   def create_user(self,email,account_no,password=None,**extra_fields):
      #code to create user like above
Вернуться на верх