war*_*eed 2 python django recursion django-templates django-admin
我是Django的新手,但我一直很喜欢它.但偶尔我似乎遇到了一些我似乎没有把事情弄清楚的地方.所以,我要求一些帮助和指导.
我正在尝试为我的一个模型扩展对象工具,这样我就可以在History旁边有一个Print按钮.
我的模板如下:
project/app/templates/admin/
Run Code Online (Sandbox Code Playgroud)
我成功地扩展了base_site.html而没有任何问题.
project/app/templates/admin/base_site.html
Run Code Online (Sandbox Code Playgroud)
但是,当我像这样添加change_form.html时:
project/app/templates/admin/change_form.html
Run Code Online (Sandbox Code Playgroud)
具有以下内容:
{% extends 'admin/change_form.html' %}
{% block object-tools %}
<a href="one">One</a>
<a href="one">Two</a>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
我得到一个例外:调用Python对象时超出了最大递归深度
这似乎我错过了一些非常基本的东西.
我试过的事情:
我很困惑,也没有成功.
PS:我也在这里使用bootstrap主题http://riccardo.forina.me/bootstrap-your-django-admin-in-3-minutes/但是出于这个问题的目的,我目前还没有使用它.
问题是admin/change_form.html你的{% extend %}块被解析为project/app/templates/admin/change_form.html.
一种解决方案是templates为您的应用创建一个名为的子目录- 可能project/templates/admin/app/change_form.html.
要覆盖其中的一个或多个,首先在项目的templates目录中创建一个admin目录.这可以是您在TEMPLATE_DIRS中指定的任何目录.
在此管理目录中,创建以您的应用程序命名的子目录.
https://docs.djangoproject.com/en/dev/ref/contrib/admin/#overriding-vs-replacing-an-admin-template
| 归档时间: |
|
| 查看次数: |
3462 次 |
| 最近记录: |