问题:使用 manage.py 时,我无法创建超级用户,并且它以错误响应 AttributeError: 'UserManager' object has no attribute 'create_superuser’。然后我尝试手动导入所有必要的模型并在 python shell 中运行它,但遇到了相同的障碍。
目标:使用继承的基本管理类正确创建超级用户
代码:
from django.contrib.auth.models import AbstractUser, BaseUserManager, Group
class UserManager(BaseUserManager):
def get_by_natural_key(self, username):
return self.get(username__iexact=username)
class User(AbstractUser):
objects = UserManager()
…
…
def __str__(self):
return ’{}’.format(self.id)
def save(self, *args, **kwargs):
self.full_clean()
super(FollowUser, self).save(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)