在Django中启用模板继承
我正在使用 Python 2.7.1 和 Django 1.3,刚开始接触 Django 模板,想要尝试很简单的模板继承。
testbase.html
hello
{% block tester %}
fail
{% endblock %}
testblock.html
{% extends "testbase.html" %}
{% block tester %}
pass
{% endblock %}
结果
hello fail
这两个模板在同一个文件夹里,而这个文件夹已经添加到项目的 settings.py 文件中。因为能找到基础模板,所以我不明白为什么找不到子模板。
谢谢大家提供的任何建议,我该接下来尝试什么。
1 个回答
2
在你的视图中,你需要确保你指向的模板是 testblock.html
而不是 testbase.html
。
假设你使用的是 render_to_response
,它的写法大概是这样的:
return render_to_response('testblock.html')
如果你的视图函数引用的是 testbase.html
,那么你就会得到一个没有扩展的模板。这是设计使然。
这里有一个链接,指向 模板文档,供你参考。:)