如何在django项目的.js文件中提及静态文件?

问题描述 投票:1回答:1

我面临着一个问题,就是如何在我的django项目中提到一个文件,让它成为一个静态文件。.js 档案

在main.js中,有一行是这样写的

navigator.serviceWorker.register("{% static '/static/sw.js' %}")

但在运行项目时,它说 Not Found: /sw.js

这就是目录结构-

enter image description here

我应该如何提及 sw.js 档案在我 main.js 文件,以避免 fileNotFound错误?

添加到 settings.py -

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
    '/static/',
]

urls.py 包括

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', index),
    path('/push_v1/', push_v1),
    path('/subscription/', subscription),
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

完全错误 -enter image description here

在Github上找到这段代码供参考 代码链接

javascript python django static web-frontend
1个回答
1
投票

在你的setting.py文件中为你的静态文件设置位置

STATIC_URL = '/static/'

STATICFILES_DIRS = (
   os.path.join(BASE_DIR, 'static'),
)

并比在你的模板中先加载静态和比设置脚本文件n模板本身。

{% load static %}

<script type="text/javascript" src="{% static 'sw.js' %}"></script>
© www.soinside.com 2019 - 2024. All rights reserved.