Django {%static 'path' %} 在文件中 javascript

在我的 script.js:


pic.src = "/static/photos/1.jpg"; // This works
pic2.src = "{% static 'photos/1.jpg' %}" // Does not work


为什么在世界上发生? 就像我一样 home.html 在职的 {% static 'path' %} :


{% load staticfiles %}
<script src="{% static 'script.js' %}"></script> // This works


还有这个 {% load staticfiles %} 或者 {% load static %} ? 对我来说都是工作 script.js 上传。
已邀请:

风见雨下

赞同来自:

当您使用模板语言时 django, 你可以

ONLY

在标记之间的模板中执行它
<script>

. 换句话说,如果要使用变量
pic2.src

javascript 在

户外的

脚本,然后您需要在标记之间声明它
<script>

通过以下方式


<script>
var pic2.src = "{% static "photos/1.jpg" %}"
</script>


然后,您可以在您可以下载的外部脚本中访问它,如下所示:


<script %}"="" js="" my_external_script.js"="" src="{% static " type="text/javascript"></script>


至于你的问题
load static


load staticfiles

, 然后这里几乎没有差异。 两者都作为一个木匠
STATIC_URL

在你的
settings.py

以及文件本身的实际路径,所以两者都应该为您的案例工作。 厘米。
https://docs.djangoproject.com ... tatic

https://docs.djangoproject.com ... iles/
欲获得更多信息。

龙天

赞同来自:

如果你需要很多静态 /或者 media/ url 在您的文件中
.js

, 它可能更方便:


<script>
var static_url = "{% get_static_prefix %}";
var media_url = "{% get_media_prefix %}";
</script>


然后是文件 url 将在所有文件中自由使用 javascript.

快网

赞同来自:

您可以在模板中分配路径,然后在文件中使用它。 javascript.

模板:


<script>
var url = "{% static 'photos/1.jpg' %}";
</script>


Javascript:


pic2.src = url

要回复问题请先登录注册