Python Django自定义用户和管理页面的问题
我使用Django 1.6创建了一个自定义用户和一个自定义管理器,如下所示:Python Django自定义用户和管理页面的问题,python,django,django-admin,Python,Django,Django Admin,我使用Django 1.6创建了一个自定义用户和一个自定义管理器,如下所示: class MyManager(BaseUserManager): #create_user, create_superuser def _create_user(self, username, dni, password, is_staff, is_superuser, **extra_dields): if not username: raise ValueError
class MyManager(BaseUserManager): #create_user, create_superuser
def _create_user(self, username, dni, password, is_staff, is_superuser, **extra_dields):
if not username:
raise ValueError('Debes ingresar un Username')
#Hace referencia al usuario personalizado de abajo
user = self.model(username=username, dni=dni, is_active=True, is_staff=is_staff, is_superuser=is_superuser, **extra_dields)
user.set_password(password)
user.save(using=self._db)
return user
#El manager para crear un usuario sin permisos
def create_user(self, username, dni, password=None, **extra_dields):
return self._create_user(username, dni, password, False, False, **extra_dields)
#El manafer para crear usuarios con permisos
def create_superuser(self, username, dni, password, **extra_dields):
return self._create_user(username, dni, password, True, True, **extra_dields)
class Usuario(AbstractBaseUser, PermissionsMixin):
dni = models.IntegerField(unique=True)
username = models.CharField(unique=True, max_length=100)
nombre = models.CharField(max_length=140)
appelidos = models.CharField(max_length=200)
is_active = models.BooleanField(default=True)
is_staff = models.BooleanField(default=False)
objects = MyManager()
#Campo con el que se va a identificar en el sistema
USERNAME_FIELD = 'username'
REQUIRED_FIELDS = ['dni']
我在运行localhost/admin中的“admin”页面时遇到了一些问题,我说
未在/admin实现错误/
你知道会发生什么吗?=) 从文档中,要使用管理站点,您需要定义has_perm
和has_module_perms
方法
此外,您还需要按照文档中的说明定义和注册模型管理类