来源:http://djangobook.py3k.cn/chapter06/
定制管理界面的外观和感觉
显然,如果在每个管理页面的头部都包含头部区域代码是搞笑的。它就和Django的模板系统一样, 是块标签的占位符。
通过Django模板系统可以很容易的修改它。Django管理站点同样是用Django编写的,它的 用户 界面使用Django自己的模板系统。(关于Django模板系统请参见第四章。)
我们在第四章已经讲到, TEMPLATE_DIRS 配置设置了Django加载模板的目录列表。 要自定义Django的管理模板,只需要拷贝Django发行版中的整个管理模板到你在 TEMPLATE_DIRS 里设置的模板目录里。
管理站点的头部区域在模板 admin/base_site.html 里。缺省情况下,这个模板在 Django管理模板目录 django/contrib/admin/templates 里,你可以在Django的安装 目录找到它,例如Python的 site-packages 目录或者你安装的其他目录。要自定义 这个 base_site 模板,把这个模板拷贝到你的模板目录下的 admin 子目录。 例如,假定你的模板目录是 "/home/mytemplates" ,拷贝 django/contrib/admin/templates/admin/base_site.html 到 /home/mytemplates/admin/base_site.html 。不要忘了有 admin 子目录。
然后,编辑这个新 admin/base_site.html 文件,替换你自己站点的名称上去。
备注 每个Django缺省的管理模板都可以重载。要重载一个模板,就象 base_site.html 一样的去做:把它从缺省目录中拷贝到你自己的模板目录中然后修改它。
你可能会想到是这么一回事,如果 TEMPLATE_DIRS 缺省是空的,Django就使用缺省的管理 模板。正确的回答是,缺省情况下,Django自动在每个app里的 templates/ 子目录里搜索 模板来做后备。具体请看第十章中的编写自定义模板加载器章节。