Django模板在更新后不会改变(可能缓存)

svdrlsy4  于 2023-06-25  发布在  Go
关注(0)|答案(2)|浏览(137)

我对Django有意见。可能还有它的缓存。版本1.11
我在urlpatterns中使用模板,比如:

urlpatterns = [
    url(r'^service_preview/', include(serviceprev_urls, namespace = 'service_preview')),
    url(r'^service_preview/',TemplateView.as_view(template_name='service_preview.html')),
]

经过大量的更新,应用到我的模板,更改停止出现在用户的浏览器。我有实际的模板在我的模板文件夹和一些以前的版本时,预览源代码在浏览器中。如果我重命名模板(这应该会引发错误,因为模板不存在),我仍然有以前的模板在浏览器源代码。浏览器页面刷新,清除浏览器缓存等没有帮助。我的模板文件夹中没有此页面的重复项。
当我使用另一个模板时,一切都没问题。问题可能出在Django缓存中。我不知道如何强制清除缓存,也许这是一个解决方案。
我把这个放在应用程序设置文件中,但它没有帮助。

CACHES = {'default': {'BACKEND': 'django.core.cache.backends.dummy.DummyCache',}}

编辑:我发现我有重复的html名称,位于同一个项目,但其他应用程序的模板目录。可能会引起问题吗

ecfsfe2w

ecfsfe2w1#

默认情况下,Django模板加载器在DEBUG = False时缓存模板。更改模板后,您需要重新启动服务器(例如Apache或gunicorn)查看更改。此行为不受CACHES设置的影响。

vktxenjb

vktxenjb2#

我也面临着同样的问题。难以置信但已经解决了。结果,每个文件夹和文件都有第二套。我的结构是这样的:

  • 项目文件夹(包含www.example.com的文件夹manage.py)
  • 项目文件夹(包含www.example.com的文件夹settings.py)
  • 项目文件夹(原始主项目文件夹的副本,因此这具有所有内容的副本,包括项目文件夹,应用程序文件夹,原始项目文件夹中的所有文件和文件夹)
  • 应用程序文件夹
  • 所有预期的文件和文件夹(视图、静态、模板等)

由于重复项在结构中的位置比较深,所以我没有去那么远的地方检查,甚至在IDE上漏掉了它。我以为我正在编辑模板和other.py文件从我的应用程序文件夹,但我实际上是编辑相同的文件(副本)从重复的应用程序文件夹位于重复的项目文件夹。我复制了我需要的文件,并将它们放在主应用程序文件夹中,删除了重复的文件,每一个变化都再次反映出来!回想起来,我觉得很傻,但事实就是如此。
PS.我知道这是一个旧的线程,但这似乎对我来说,在寻找一个解决方案的列表的顶部.希望能让别人的生活更轻松一点!

相关问题