在Django中实现多个管理级别

时间:2011-03-15 15:42:55

标签: django django-admin django-authentication django-apps django-users

我决定将项目从PHP转移到Python,尽管经过数小时的搜索,但我找不到实现以下设计的方法。我试图扩展用户类并进行自定义管理站点,但实际上没有任何用处。

我在根本层面,我自己。我管理'客户',他们自己管理'客户'。 客户控制着一种详细的调查,用户和被邀请者参与其中。

粗略设计的一个例子:

  • ME(超级用户)
    • 客户
      • 客户
      • 调查收集
        • 用户
          • 受邀者
        • 调查
          • 受邀者(被邀请者是调查和用户的子女)
        • 问题

我不确定最佳实施方式。我喜欢django管理界面,但我需要客户只能修改他们的客户,调查集等,客户只能管理他们自己的调查集等等。

有没有办法在Django中实现这一点,可能是通过继承做自定义用户类型并为其分配自定义管理站点?

我知道让自己的应用程序管理各种“管理”界面可能更容易,在这种情况下,有一种简单的方法来管理这些用户类型及其各种管理式管理系统的单独身份验证吗? / p>

1 个答案:

答案 0 :(得分:1)

我最接近这个是基于How to have 2 different admin sites in a Django project?并且与我提出的另一个问题有关:seperate 'admin' interfaces for different user types in django

我最终创建了两个单独的django admin实例,每个实例都有自己的验证,适用于模型上的过滤器和它们之间共享的CRUD操作。