从你说的话我认为你使用“视图”而不是“模板”。如果你的意思是“模板”,你应该知道django有这个问题的解决方案:template inheritance。基本上,您应该设计一个“基本”模板,它将成为每个页面的骨架,特定模板将继承该模板。下面是来自Django文档采取了简单的例子:
{% extends "base_generic.html" %}
{% block title %}{{ section.title }}{% endblock %}
{% block content %}
<h1>{{ section.title }}</h1>
{% for story in story_list %}
<h2>
<a href="{{ story.get_absolute_url }}">
{{ story.headline|upper }}
</a>
</h2>
<p>{{ story.tease|truncatewords:"100" }}</p>
{% endfor %}
{% endblock %}
的文档不具有base_generic.html
一个例子,但一个简单的一个是这样的:
<html>
<head>
<title>{% block title %} Default title {% endblock %}</title>
<!-- other stuff -->
</head>
<body>
<!-- header, etc -->
{% block content %}
Default content
{% endblock %}
<!-- footer -->
</body>
</html>
注意Default title
从base_generic.html
将由扩展它的模板替换为{{ section.title }}
。如果在base_generic.html
范围内的模板中没有标题块,标题将为Default title
。这发生在所有块上。
你是不是指主模板? – 2010-11-09 13:07:01
也许 - 你是指django还是Symfony?我没有听说SF中的“主模板”。 – skyeagle 2010-11-09 13:24:51
我正在尝试django。在Django中,“模板”是symfony中的“视图”。 – 2010-11-09 13:31:36