我如何在不同的应用程序中使用不同的模板。在一个项目中我有两个应用程序 1)网站 2)广告。我想在广告中使用默认模板,但在网站中使用不同的模板。如何?或者在模板中有一种使用“if 条件”的方法,因为我只需要更改模板中的两行。
问问题
404 次
3 回答
2
首先,您永远不必在不同的应用程序中使用相同的模板。不同的应用程序可以使用不同的模板,现在的常见做法是将模板目录放在相应的应用程序文件夹中。
此外,对于两行的更改,您可以始终使用 `
{% if condition %}
something
{% else %}
some other thing
{% endif %}
或者
{% ifequal var 'var' %}
something
{% else %}
some other thing
{% endifequal %}
都在同一个模板中。
编辑
如果你说你想在 diff 应用程序中使用相同的模板,你可以应用模板路径考虑以下事实, 首先 django 模板加载器会在同一个应用程序目录中查找模板,然后在项目的根目录中查找,如果没有找到,它将寻找它 django 自己的模板源。
因此,如果您想在任何地方使用模板,您可以将它们放在一个名为模板的文件夹中,放置在您的应用程序目录所在的相同路径中。(即项目的根目录)。
projectroot/app1/templates/app1.html
projectroot/app2/templates/app2.html
projectroot/app3/
projectroot/templates/common.html
同样,common.html 可用于所有应用程序。
于 2009-05-27T13:20:49.017 回答
0
使用模板继承http://www.djangobook.com/en/1.0/chapter04/定义一个基本模板并仅更改所需的块。
于 2009-05-27T23:19:44.937 回答
0
PL。检查我提出的问题的链接,由 Yuji T 提供答案
于 2012-01-13T07:31:36.970 回答