【问题标题】:Django Development server doesn't detect changes in my html filesDjango 开发服务器未检测到我的 html 文件中的更改
【发布时间】:2017-08-04 13:45:27
【问题描述】:

我在我的项目中使用 django 1.7.5。我在我的项目中使用 vagrant 和 virtual box。我成功运行服务器并检测到浏览器上的更改。但是,问题是在对 html 文件进行任何更改后,我不得不重新启动服务器才能看到浏览器上的变化。

django 1.7.5 是否随时检测更改?(例如更改文件、刷新浏览器、查看更改。)还是这与 django 版本无关?

我的网站很旧。所以它使用 1.7.5。如何在我的 django 1.7.5 版本中启用缓存。 我在我的设置文件中得到了这个。

   CACHES = { 'default': { 'BACKEND': 

'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': 
os.environ.get('CACHES_DEFAULT_LOCATION', '127.0.0.1:11211') }
, 'social': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': os.environ.get('CACHES_SOCIAL_LOCATION', '127.0.0.1:11211') 
} }

编辑:我的问题可能是错误的。 我在 html 文件中所做的更改不会反映在浏览器上。 它用于反映我在本地从 django 运行示例项目时(不使用 virtualbox)

【问题讨论】:

  • 尝试清除浏览器缓存。
  • Django 将仅检测 .py 文件的更改并自动重新启动。如果改html或者js或者css服务器不重启。
  • 问题可能出在您的模板设置中(尽管 Django 默认不缓存模板),也可能出在您在虚拟机中挂载文件的方式上。您没有提供足够的信息来提供进一步的帮助。
  • @AbijithMg Django 运行服务器可能不会重新加载,但是当您执行return render(request, 'my_template.html', {}) 时,Django 会在每次视图运行时默认加载模板文件。

标签: python django vagrant


【解决方案1】:

Django 检测 Python 文件中的更改,它不会检测 html 文件中的更改,因为每次访问服务器时都会呈现这些更改(除非您启用了缓存)。

浏览器可能是造成这种情况的原因,因为它可能会缓存 HTML 文件,甚至无法访问服务器再次获取它们。

对了,为什么不升级到最新的 Django 呢? 1.7 已经很老了。

【讨论】:

  • 我的网站很旧。所以它使用 1.7.5。如何在我的 django 1.7.5 版本中启用缓存。我在我的设置文件中得到了这个。 CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': os.environ.get('CACHES_DEFAULT_LOCATION', '127.0.0.1:11211') }, 'social': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': os.environ.get('CACHES_SOCIAL_LOCATION', '127.0.0.1:11211') } }
猜你喜欢
  • 2017-09-11
  • 1970-01-01
  • 1970-01-01
  • 2021-07-20
  • 2020-05-29
  • 2013-07-04
  • 1970-01-01
  • 2019-09-15
  • 2012-02-28
相关资源
最近更新 更多