6

我最近正在尝试创建一个涉及多个用户级别的项目。

(只是一个简短的粗略模式的例子)

  • 我(超级用户)
    • 客户_
      • 客户_
      • 调查集合
        • 调查用户
          • 受邀者_
        • 调查
          • 被邀请人(被邀请人是调查和用户的孩子)
        • 问题
        • ETC

理想情况下,我会:

  • www.example.com/client/ 转到您必须是客户端才能访问的客户端界面
  • www.example.com/customer/ 转到您必须是客户才能访问的客户界面

我已经确定为所有这些都使用定制的 Django 管理界面可能是不可能的(或者是吗?)。因此,我倾向于为每个级别的用户手动创建“管理”界面,允许他们管理各自的角色。为每个用户设置不同的用户类型和单独的界面的最佳方式是什么?

我喜欢继承用户的方式:http: //scottbarnham.com/blog/2008/08/21/extending-the-django-user-model-with-inheritance/

但我不确定如何为不同的用户设置不同的“管理”区域。

作为一个相关的附带问题,我也不确定如何访问自定义属性以及标准用户属性以及如何在我将使用的 ACTUAL 管理界面中编辑/保存它们。

我需要针对客户端数据库对“客户端”用户进行身份验证,以检查他们是客户端,但不知何故还要针对管理身份验证、用户名、密码等的用户数据库进行身份验证。

我正在从 PHP 切换到 Python/Django,因此非常感谢任何可以帮助我的建议。

谢谢!

4

1 回答 1

2

我最接近这个是基于这里的另一篇stackoverflow文章:如何在一个Django项目中有2个不同的管理站点?

我最终创建了两个完全独立的 django.contrib.admin.sites.AdminSite 实例,它们最终似乎可以工作,尽管并不理想。

于 2011-05-09T22:59:30.517 回答