我有一个问题:
在addWorkout.html中:
{% extends "workout/base.html" %}
{% block footer %}
<script type="text/javascript" src="{% static js/addWorkout.js %}"></script>
{% endblock %}
在base.html中:
{% load static %}
<!DOCTYPE html>
<html lang="en">
<body>
{% block content %}{% endblock %}
{% block footer %}{% endblock %}
</body>
</html>
这将产生一个错误:
Invalid block tag on line 49: 'static', expected 'endblock'. Did you forget to register or load this tag?
此错误源于 addWorkout.html 中脚本标记的 src
属性。显然,django 不允许静态标签位于 block 标签内。
但是如何使用 body
元素底部的 script
标签从 static
导入 javascript?
编辑:
如果我将 addWorkout.html 更改为:
{% extends "workout/base.html" %}
{% load static %}
{% block footer %}
<script type="text/javascript" src="{% static js/addWorkout.js %}"></script>
{% endblock %}
我会收到以下错误:
最佳答案
子模板不会继承其父模板加载的标签库,您必须在 addWorkout 模板中显式加载 static
标签。请注意this is documented ...
关于javascript - Django:如何使用模板从静态文件加载 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47201786/