6

我想为我的 django 项目中的每个应用程序创建一个从 admin/index.html 个人派生的自定义 index.html。

例如我的文件夹结构是这样的:

  • 应用程序1
    • 模板
      • index.html(不同于全局模板 admin/index.html)
  • 应用程序2
  • 模板
    • 行政
      • base.html
      • index.html(全局模板 index.html)

如何为我的应用程序实现 django 识别的自定义管理 index.html 文件?目前只有全局模板/管理文件夹中的 index.html 被考虑用于在我的后端呈现索引页面。

我正在使用 django 1.6

4

1 回答 1

6

不幸的是,只有 Django 管理站点的某些部分可以在每个应用程序的基础上被覆盖,正如它在文档中所说:

并非每个应用程序或每个模型都可以覆盖 contrib/admin/templates/admin 中的每个模板。以下可以:

  • app_index.html
  • change_form.html
  • change_list.html
  • 删除确认.html
  • object_history.html

请记住,管理界面本身就是应用程序,因此它将进行一次模板扫描并加载出现的第一组模板。

我认为您最好的两个选择是在您的项目中使用多个管理站点为特定应用程序添加自定义视图- 前者可能更容易,但如果您不希望人们必须单独登录,这将是一个问题来控制某些事情。

于 2014-03-26T14:35:38.637 回答