我的django模板系统存在问题,我有一个base.html文件,其中包含网站所有网页上常见的内容,base.html文件提取一些动态内容,如类别和归档,由python文件传递给它,它从mysql数据库中获取类别和归档数据。
我在其他html文件中继承此base.html文件时的问题,例如index.html:
{%extends“base.html”%}
当我调用ex:http://mywebsite.com/index/
的主索引网址时索引页面已加载,但应从base.html文件加载的类别和归档数据不会。
我做错了什么,请帮忙。
答案 0 :(得分:2)
很可能你有一个(或两个)问题:
base.html中的块被index.html中的块覆盖,并且您没有使用{{block.super}}
来包含基本模板中的内容。
调用index.html的视图函数没有创建适当的上下文变量来为模板提供所需的数据。
答案 1 :(得分:0)
由于这是一个老问题,它现在可能已经解决,但我发现Django 1.1存在一个问题,其中模板继承在某些情况下似乎不起作用。
我的应用程序称为“预算”。模板在PROJECTROOT /预算/模板/预算中,我已将模板目录定义为PROJECTROOT /预算/模板。
在模板/预算目录中,我有base.html和index.html。 index.html通过'extends“budget / base.html”'扩展base.html。
当我点击索引网址时,index.html模板会在不继承base.html的情况下呈现。当我将index.html的命名切换到budget_index.html时,一切都按预期工作。
我希望这对某些人有所帮助,因为我现在几个小时都在抨击我。