【发布时间】:2013-04-12 14:22:15
【问题描述】:
我有一些模板标签,其中在标题中包含一些 JavaScript 和 CSS 文件。问题是,如果我在同一个模板中多次使用这些标签,这些文件会被不必要地包含多次。有没有一种传统的方法来防止这种情况发生。 (就像 C++ 中的 #ifdef)
【问题讨论】:
-
听起来您想重构应用程序中的某些内容。
标签: django include django-templates
我有一些模板标签,其中在标题中包含一些 JavaScript 和 CSS 文件。问题是,如果我在同一个模板中多次使用这些标签,这些文件会被不必要地包含多次。有没有一种传统的方法来防止这种情况发生。 (就像 C++ 中的 #ifdef)
【问题讨论】:
标签: django include django-templates
我认为您需要组织您的模板,以便在顶层层次结构中包含包含,并且仅在您需要它的模板中从它继承。
Django 提供了一种非常强大的机制来扩展模板https://docs.djangoproject.com/en/dev/ref/templates/builtins/,但我认为您实际上并不需要类似预处理器的守卫,您可以在大部分时间里绕过它们。
也许你需要的一个最实际的例子会帮助你看到你的问题。
【讨论】:
block.super。我需要block.super,因为我的标签有不同的依赖关系。