1

我有很多与 HTML 一起内联编写的脚本。现在,我正在尝试将脚本移动到外部文件。但是,我的大部分脚本都使用 django 变量和 if.else 语句。因此,我无法将这些脚本移动到外部文件。是否可以在从外部文件加载的脚本中使用 django 模板变量/条件?

4

2 回答 2

1

您要求的是客户端包含,以便最终将外部文件保留为“链接”。这意味着加载主页,然后加载外部内容,所有客户端。然而,您希望包含被 django 处理。

Django 模板是在服务器端呈现的,这意味着它们必须在服务器端的上下文中进行评估。主页必须将包含内容折叠到其中,以便将其提供给客户。因此,如果您接受可以将内容保存在外部文件中,但您所要求的内容将在同一页面中呈现,那么您所要求的就是可能的。

否则,您将不得不做一些更复杂的事情,比如让 javascript 加载外部页面,将相同的上下文信息传递回服务器,服务器可以通过不同的 url 端点呈现模板。或者只是依赖会话数据,让其他 url 完全自己呈现其页面。

于 2012-11-22T06:39:01.033 回答
0

你用过包含吗?制作另一个 html 文件并将其包含在父模板中。

您可以使用关键字参数将其他上下文传递给模板:

{% include "name_snippet.html" with person="Jane" greeting="Hello" %}
于 2012-11-22T06:26:58.023 回答