【发布时间】:2018-05-22 20:37:12
【问题描述】:
伙计们
目前,我正在做 Django 网站开发 Django 版本:1.11.13
我在每个应用程序中添加了静态文件夹。 和 DEBUG = True 在 settings.py 中
可以找到静态文件(javascript 和 css),但是当我在 css 中更改/添加内容时,可以重新加载它。但是javascript不能。
我所做的是:
<script src="{% static 'assets/js/dashboard.js' %}?{% cache_bust %}" type="text/javascript"></script>
cache_bust 是模板标签,它将在 js 链接的末尾添加 uuid。 它不适用于在浏览器中重新加载 javascript。
我选择了所有时间来清除浏览器中的缓存。 它不适用于在浏览器中重新加载 javascript。
python manage.py collectstatic,还是不行
只有我能做的就是创建另一个js文件,这个变化可以被浏览器检测到。
我认为这没有意义。你有同样的问题,如何解决?有什么建议吗?
谢谢。
【问题讨论】:
-
我在使用带有 CSS 文件的 Pycharm IDE 时遇到了类似的问题。对我来说,每次编辑文件时都会帮助重命名文件。但也不知道这里有什么问题。
-
我将通过查看客户端浏览器调试控制台开始调试。查看应用程序发送的 HTML 输出,然后“清除浏览器缓存”并仔细查看浏览器在加载页面时经历的 HTTP 交换列表。
-
@Chiefir:我也在使用 PyCharm。我已经切换到在 Eclipse 中使用控制台和编辑,问题没有改变。我认为您可能需要在每个静态文件的末尾添加缓存崩溃。让我们来看看它。我研究了一段时间,它适用于某些人,但它不适合我。 github.com/mgrp/django-cachekiller
-
@MikeRobinson 是的,这就是我所做的。我们可以看到django服务器发来的静态文件,javascript文件没有变化,django端已经更新了。
标签: javascript django static