0

我如何在不同的应用程序中使用不同的模板。在一个项目中我有两个应用程序 1)网站 2)广告。我想在广告中使用默认模板,但在网站中使用不同的模板。如何?或者在模板中有一种使用“if 条件”的方法,因为我只需要更改模板中的两行。

4

3 回答 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 提供答案

如何在同一个 django 项目中为 2 个应用程序使用 2 个不同的 change_list.html

于 2012-01-13T07:31:36.970 回答