如何在管理员用户编辑中隐藏字段?主要是我想在某些例外中隐藏权限和组选择,但排除变量不起作用:/
答案 0 :(得分:9)
我可能会迟到回答这个问题,但任何方式,这里都有。约翰在概念上是正确的,但我只是想这样做,因为我知道django admin
真的很灵活。
以任何方式隐藏用户模型表单中的字段的方式是:
1。 exclude
类的ModelAdmin
属性可用于隐藏字段。
2:模型中应该允许空白。
模型字段上的 3: default
属性是一个优势,或者您可能会遇到意外错误。
我遇到的问题是我曾经得到验证错误。我看了回去的踪迹,发现了这一点
该错误是由于UserAdmin
的{{1}}分组,默认的fieldsets
字段集permission
会在您的子级模型管理员中覆盖此内容。
使用user_permission
中的exclude
属性,您可以在其中访问get_form
变量,并根据用户的权限或群组进行动态设置。
<强>代码:强>
admin.py:
request
答案 1 :(得分:-4)
django admin不是为非常精细的控制而设计的,所以它们不是为了允许这种控制而设计的自动变量。
如果您需要这种类型的控制,您将不得不自己动手。您需要覆盖默认的管理模板。您可能希望使用权限系统来跟踪允许用户执行的操作。
请记住您正在制作的自定义级别。在某些时候,远远超出管理应用程序的预期目的和限制将比简单地滚动您自己的更细粒度的CRUD系统更多的工作。