Django 1.6管理面板定制

Ale*_*ash 3 python django customization django-admin

现在我正在开发一个反馈应用程序,

因此,管理员必须查看来自用户的消息,过滤它们(已读/未读)并将其标记为重要.我已经完成了我需要的所有功能,但我无法自定义我的标题.例如.更改列表中有一个默认标题(请参阅屏幕截图,选中此标题),如何删除这些标题或自定义它们?截图

非常感谢提前.

Ser*_*eim 6

实际上,@ mayankTUM的答案是正确的.它不遵循django设计理念,不应该实现(@mayankTUM自己提到了他的解决方案的问题之一,但有很多甚至更多)!

基本上,您可以通过覆盖管理模板来完成.因为有一些问题(我稍后会解释),这正是我为解决你的要求所做的:

  1. 创建了一个admin在我的templates文件夹中命名的目录.
  2. change_list.html从那里复制模板<django>\contrib\admin\templates\admin\change_list.html.
  3. 在新的结尾添加了以下内容change_list.html:{% block content_title %}Hello world!{% endblock %}

现在,它将打印"Hello world!"而不是"Select ... to change".

我必须注意到复制整个 change_list.html不是DRY - 如果我刚创建文件,使其扩展admin/change_list.html并添加,那就更好了content_title.然而,这不起作用,将导致无限递归(请检查此错误报告https://code.djangoproject.com/ticket/15053) - 这是我之前提到的问题.在以下问题中讨论了复制整个模板的更好解决方案:

Django:覆盖和扩展应用程序模板 以及 如何覆盖和扩展基本的Django管理模板?django覆盖管理员模板

PS:我TEMPLATE_DIRSTEMPLATE_LOADERS项目设置如下:

TEMPLATE_DIRS = (
    PROJECT_PATH.child('templates'),
)

TEMPLATE_LOADERS = (
    'django.template.loaders.filesystem.Loader',
    'django.template.loaders.app_directories.Loader',
)
Run Code Online (Sandbox Code Playgroud)