【问题标题】:How to extend django auth user page in the admin site如何在管理站点中扩展 django auth 用户页面
【发布时间】:2016-10-28 00:50:29
【问题描述】:

我知道如何为我的应用模型扩展 change_form.html。例如,我有一个名为“sales”的应用程序 - 要修改管理员更改表单,我有一个模板

[PROJECTDIR]/templates/admin/sales/customer/change_form.html

我会根据需要做我需要的覆盖各种块的事情。这很好用。

但是,我想不通的是如何以相同的方式修改 User 对象的管理页面。我尝试了各种目录命名结构,但都没有奏效:

[PROJECTDIR]/templates/admin/auth/user/change_form.html
[PROJECTDIR]/templates/admin/contrib/auth/user/change_form.html
[PROJECTDIR]/templates/admin/django/contrib/auth/user/change_form.html
[PROJECTDIR]/templates/admin/django.contrib.auth/user/change_form.html

我可能遗漏了一些非常简单的东西,但我找不到任何文档,而且我的 Google-fu 也找不到任何东西。

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    您可能想检查 ModelAdmin.render_change_form 方法中发生了什么: https://github.com/django/django/blob/master/django/contrib/admin/options.py#L1034 您对“app_label”变量的值感兴趣。在我的环境中,它是“auth”。所以你的第一个选项可以正常工作 - templates/admin/auth/user/change_form.html

    【讨论】:

    • 谢谢,你让我走上了正确的道路。我正在使用监护人来保护管理员视图,它会更改视图说明符。一旦我弄清楚了,我就开始了。
    • 我很高兴它有帮助:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-10
    • 1970-01-01
    • 2021-09-25
    • 2018-02-23
    • 2023-03-11
    • 1970-01-01
    • 2018-10-22
    相关资源
    最近更新 更多