我的情况是允许三类用户访问管理界面: -管理员 -主管 -代理人
这是一个层次结构的情况,管理员是一个(超级用户),它创建了主管,主管创建了代理。在
他们都可以使用distincts权限登录到django admin。在
登录名由'django.contrib.auth公司'使用默认模型auth\u user(。在
from django.contrib.auth.models import User
class Supervisor(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
e_mail = models.EmailField(max_length=60, db_column='E-Mail',blank=True)
...other fields....
class Admin(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
e_mail = models.EmailField(max_length=60, db_column='E-Mail',blank=True)
...other fields...
但是,有一个问题。如果我允许主管创建代理,则意味着我必须添加权限才能添加和更改表用户。这很危险,任何主管都可能成为超级用户,删除用户等。。。。在
我怎样才能解决这个问题??有没有可能允许主管创建一个代理人,而不让他有危险??在
谢谢
编辑
我有一个疑问。。。在模型.py在定义I类时编写了以下方法:
^{pr2}$在Java中,EJB的方法是事务性/原子性的(提交是自动的)。。。在django中,我必须调用save()方法。在
这是一个不同于以前的问题。。。。。在
不知道我是否能理解你的问题。但是,如果我这样做了,你可以编辑用户创建表单。在
由于
superuser
不再是一个选项,您的主管不能成为超级用户。在如果有帮助,请告诉我。也许我们能更接近解决方案。在
相关问题 更多 >
编程相关推荐