我有一个Django项目,我需要一个自定义用户,我按照Django Documentation的步骤来实现自定义用户,但超级用户共享相同的属性。我真的不需要那些管理员用户。有没有办法为管理员和用户设置特定的模型?
答案 0 :(得分:0)
在这里,您可以看到,Django用户有两个属性is_staff
和is_superuser
,管理员用户应该为这些属性(例如:True
)和正常值user.is_superuser=True
用户可以拥有False
,可以区分管理员和用户,其他属性如first_name,last_name等可以由双方共享。
否则,您可以添加自己的属性:ex:
class SomeUser(User):
is_admin= models.NullBooleanField(default=False, null=True)
或者喜欢:
class SomeUser(models.Model):
user=models.OneToOneField(User)
is_admin= models.NullBooleanField(default=False, null=True)
#I prefer like this way of using customizing authentication