权限定义
可以扩展用户模型,也可在其他业务模型上增加Meta定义权限。
class Profile1(models.Model):
user = models.OneToOneField(User)
depart =models.ForeignKey(Depart,verbose_name=u"部门名称")
isallow =models.BooleanField(u"是否通过",default=False)
# friends = models.ManyToManyField('self',null=True)
class Meta:
verbose_name = u"帐号扩展"
verbose_name_plural = verbose_name
permissions = (
("admin_usr", u"用户管理"), #上线、重置密码
("admin_grp", u"系统管理"), # 设定权限
)
def __str__(self):
return self.id
权限判断
request.user.has_perm('ddmt.admin_usr')
权限管理
p_admin_usr = Permission.objects.get(codename='admin_usr')
usr.user_permissions.remove(p_admin_usr)
usr.user_permissions.add(p_admin_usr)