我是否需要使用“加载静态”#39; Django的整体布局和标题两次?

时间:2018-06-02 05:09:06

标签: django django-staticfiles

我在Django的一个项目,问题是这样的。 我的网站有一个整体布局,例如' layout.html'其中包括一些静态文件,链接和' header.html'包括导航器,' footer.html'包括一些链接。但是' layout.html'和' header.html'使用静态文件,所以我认为在' layout.html'的第一行有一个命令{%load static%}可以影响' layout.html'和' header.html'因为' layout.html'包括' header.html'!但它不起作用,只有在两个文件中{%load static%}时才有效。  也许我的解释很难理解,所以我会很快编写我的代码。

'的layout.html'

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<link href="{% static 'onepage-scroll.css' %}" rel="stylesheet" type="text/css">
</head>
    <body>
        {% include 'header.html' %}
        {% block content %}
        {% endblock %}
        {% include 'footer.html' %}
    </body>
</html>

&#39; header.html中&#39;

{% load static %}
<nav id="navi">
    <h3><a href="{% url 'main:home' %}"><img src="{% static 'logo.jpg' %}"></a></h3>
</nav>

我认为这不是一个好的实现,因为有2次加载静态文件。还有另一种解决方法吗?

1 个答案:

答案 0 :(得分:0)

我认为你可能会误解{% load static %}的作用。它只是让您的模板访问相关的{% static %}标记。它不会导致静态文件本身被重新加载,或者在移植额外代码方面造成任何重大负担。

您完全按照预期使用标记。如果您需要静态文件,则需要加载标记以执行此操作。