我在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次加载静态文件。还有另一种解决方法吗?
答案 0 :(得分:0)
我认为你可能会误解{% load static %}
的作用。它只是让您的模板访问相关的{% static %}
标记。它不会导致静态文件本身被重新加载,或者在移植额外代码方面造成任何重大负担。
您完全按照预期使用标记。如果您需要静态文件,则需要加载标记以执行此操作。