Django:从静态文件目录中的js引用静态文件

时间:2015-06-12 08:09:37

标签: javascript python django templates django-staticfiles

我正在尝试从放置在我的Django项目的静态文件目录中的js文件中调用静态文件。
这是一个例子。
从我的模板中,我通过以下方式从静态文件中调用js:

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

到目前为止没有问题 所以,我有一个名为 init.js 的静态文件,它具有这行代码的函数:

global: { href: 'css/style.css', containers: '70em', grid: { gutters: ['2.5em', 0] } },

其中 init.js 是静态文件, css / style.css 也是静态文件。
以下列方式自然更改代码会导致无法识别python / Django代码的 init.js 文件出现问题

{% load staticfiles %}
global: { href: "{% static 'css/style.css' %}", containers: '70em', grid: { gutters: ['2.5em', 0] } },

有没有办法直接从另一个静态文件中调用静态文件,例如这种情况? 谢谢!

1 个答案:

答案 0 :(得分:3)

你可以把它保存在模板中的某个地方

<script type="text/javascript" charset="utf-8">var tem_css_location = {% static 'css/style.css' %}</script>

现在你可以在init.js中调用tem_css_location:

<script type="text/javascript" charset="utf-8">var tem_css_location = {% static 'css/style.css' %}</script>
<script src="{% static 'js/init.js' %}"></script>
init.js中的

将如下所示:

global: { href: tem_css_location, containers: '70em', grid: { gutters: ['2.5em', 0] } },