1

我在我的应用程序中使用 Django 模板系统,并且在子模板中我相应地引用了 {% extends "base.html" %},尽管在重新渲染模板时,它只出现了 html 标签,没有 css 样式-因此完全没有选择 base.html 模板。请告知我做错了什么?找不到我的 base.html 模板的位置可能是个问题吗?

这是子模板代码:

{% extends "base.html" %}
{% block content %} 
{% for field in form %}
{{ form }} 
{% endfor %} 
{% endblock %}

这是 base.html 模板代码(相关部分):

<div id="content">
<h2>
                Page heading - This is where the functionality goes...
            </h2>
            <FIELDSET><INPUT class=Test value="Test" type=submit></FIELDSET>

            {% block primary %}{% endblock %}
</div>

如果您需要更多信息来解决此问题,请告诉我。

-我将在今晚(伦敦时间)添加views.py--

这一切都已排序,非常感谢您的帮助

谢谢

4

1 回答 1

0

就像 goliney 提到的......你需要在你的 base.html 文件中有一个部分

{% block content %}
{% endblock %}

然后,您可以在扩展 base.html 模板的其他模板中覆盖它。

目前在您的子模板中,您可以执行

{% block primary %}
whatever you want here and this would show up where you marked on the base.html template
{% endblock %}

也不确定你是否只是在整理一个简单的例子。您将需要创建

<form action="" method="post">{% csrf_token %} 
for loop here
</form>
于 2012-12-06T05:54:32.403 回答