【问题标题】:Django - adjusting admin panel for usersDjango - 为用户调整管理面板
【发布时间】:2019-07-20 04:18:59
【问题描述】:

我目前正在开发一个 Django 项目,该项目可供多家公司使用,并提供有关其客户的特定数据。

我的问题是是否有可能以某种方式调整 Django 管理面板,以便任何用户都可以登录(在这种情况下是特定的公司员工)并有权访问管理工具,但仅限于与他的公司相关的数据(在这种情况下是公司客户)?

示例: X公司的员工登录并检查其公司客户的状态,更改一些数据等。同时,Y公司的员工登录并与仅与公司Y相关的客户进行相同的工作。两个用户都只能看到与客户相关的客户到他们自己的公司——他们无权访问其他公司的数据。

我找到了类似this 的东西,但我不确定它是否适合我的情况:P

【问题讨论】:

  • 您链接到的第一个答案中建议的代码可以工作,但是他们给出的警告是一个大警告,并且随着您继续开发 Django 项目,沿着这条路线走下去会产生长期后果.我建议为这些用户创建自己的视图,以便为您的目的保留管理员的全部功能,并可以针对他们的特定用例定制他们的体验

标签: django admin user-permissions


【解决方案1】:

我认为您链接的主题几乎就是您想要做的:)

我必须做一些类似的事情(基于角色的显示对象过滤),并且还重写了 get_queryset 方法以实现我必须做的事情。

我认为该线程中接受的顺序很好地概述了如何处理它。

【讨论】:

    猜你喜欢
    • 2021-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-01
    • 1970-01-01
    • 2021-03-27
    • 1970-01-01
    相关资源
    最近更新 更多