【问题标题】:I deleted a css static file but my website still reads it?我删除了一个 css 静态文件,但我的网站仍然可以读取它?
【发布时间】:2017-12-31 04:52:56
【问题描述】:

我有一个名为 blog.css 的静态 css 文件,我将它加载到我的 base.html 模板中,如下所示:

{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'css/blog.css' %}">

但是当我想更改该 css 中的某些内容时,更改不会出现。由于我的困惑,我尝试测试一些东西。

  1. blog.css 重命名为blog2.css

奇怪的是,当我对 blog2.css 进行更改并在 base.html 中调用它时,我的更改会起作用,例如更改背景颜色等。

但是当我对blog.css 进行更改时,什么也没有发生。

所以,我尝试删除 blog.css,但仍然在 base.html 中调用它。

当我第一次制作该文件时,一切仍然有效。因为找不到静态文件夹中的 blog.css,所以我应该期待一个损坏的设计 HTML 页面和控制台中的 404。

好像 blog.css 是一个幽灵,或者仍然在我的文件夹中某处的东西.. 还是我遗漏了什么?

我也试过重启runserver命令,无数次刷新页面,甚至重启电脑。

我对 Django 还是很陌生,我正在尽我所能去理解它,任何提供的帮助都将不胜感激。非常感谢!

【问题讨论】:

  • 您是否在 Chrome 的“网络”选项卡中看到 .css 文件加载?
  • 是的,神秘的是,它确实出现在 Chrome 的“网络”选项卡中......
  • 尝试对自己进行一些研究,您的问题与django或python无关,在设计以反映更改时清理浏览器只是基本规则,或者将浏览器设置为不存储缓存
  • 作为 Web 开发人员,请始终使用 Ctrl + F5!
  • 在 Mac 中,如果您按住刷新按钮,则会出现清除缓存的选项。更好的是,在使用开发工具窗口时保持选中“禁用缓存”框以确保您是最新的。

标签: python django django-staticfiles


【解决方案1】:

要测试 css 或 js 或任何此类静态文件的更改,请遵循下面列出的任何首选方法

简单的方法:

  • 通过按 (Ctrl + F5) 而不是仅使用 F5 刷新选项卡
  • 打开私人窗口或隐身窗口并运行网站
  • 清除浏览器缓存
  • 尝试使用不同的浏览器(最好是没有用来打开网站或没有缓存网站的浏览器)
  • 在开发人员工具打开时禁用缓存:按照answer 中的步骤操作

【讨论】:

  • Ctrl + F5 就像一个魅力,因为它在刷新时会删除缓存。直到现在我才知道。谢谢!
【解决方案2】:

我以前也遇到过这种情况,只是需要时间并重新加载服务器才能进行更改,请尝试更改浏览器以查看 CSS 现在是否消失了。 Django 在浏览器中使用缓存来加快加载速度。要解决此问题,您必须清除缓存

【讨论】:

    【解决方案3】:

    我通过清除浏览器中的缓存来修复它。不再找到缓存中的 blog.css。

    【讨论】:

    • Python Django 的工作方式是缓存数据以加快内容和页面加载速度。为了防止这种情况再次发生,请在每次运行服务器之前清除缓存或禁用缓存
    【解决方案4】:

    正如其他答案中提到的,“缓存文件”似乎是问题所在。尝试删除缓存(我没有尝试过)。

    您还可以将 CSS 文件的名称更改为旧名称以外的名称。这对我有用。

    【讨论】:

      猜你喜欢
      • 2015-12-01
      • 1970-01-01
      • 2014-12-13
      • 1970-01-01
      • 2022-10-16
      • 2014-08-10
      • 1970-01-01
      • 2013-08-14
      • 1970-01-01
      相关资源
      最近更新 更多