【问题标题】:Django server not making changes to CSSDjango 服务器未对 CSS 进行更改
【发布时间】:2018-06-05 03:16:02
【问题描述】:

我对 Django 很陌生。我启动了一个应用程序,创建了模板和静态目录,将它们添加到项目设置中并按照this tutorial 运行服务器。然后我想更改我的 CSS 文件中的一些设置,所以我修改了一些行。但是当我再次运行python manage.py runserver(我在Windows上运行)时,更改没有生效。 CSS的初始代码是:

body {
  position: relative;
  padding-bottom: 10px;
  min-height: 100%;
  background: #f7f7f7;
}

我改变了填充结果如下:

body {
  position: relative;
  padding-bottom: 50px;
  min-height: 100%;
  background: #f7f7f7;
}

当我再次运行 django 服务器时,新代码没有生效。我用 Chrome 开发工具检查了代码,发现填充值仍然是 10px。我一直在一次又一次地运行服务器,但没有任何变化。我的设置有什么遗漏吗?

【问题讨论】:

标签: python css django django-staticfiles


【解决方案1】:

我认为您必须使用此命令从服务器实例收集静态文件:

./manage.py collectstatic

然后会考虑静态文件中的更新。

【讨论】:

  • 它返回给我这个>>> django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting to a filesystem path.
  • 感谢您的帮助。
【解决方案2】:

我经常遇到同样的问题,你应该删除 staticfiles 目录。 此外,您应该在模板中的 HTML 标头中添加“无缓存”标头,至少用于开发。

<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />

如果遇到问题,您也可以强制浏览器清除缓存。

如果你想重建'staticfiles'目录,你可以运行命令:

python manage.py collectstatic

您不需要停止/重新启动 django 服务器,它对 web 文件 (HTML/JS/CSS) 没有影响。

【讨论】:

  • 我删除了staticfile目录并重新创建了该目录,它工作了! HTML 对我来说是新事物。感谢您提供信息和帮助。
【解决方案3】:

是浏览器缓存问题。您可以通过多种方式解决它,但我发现最简单的方法是尝试浏览器的 IncognitoPrivate 模式。您将立即看到 css 文件的每一次更改。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-08
    • 2021-10-02
    • 1970-01-01
    • 2021-02-26
    • 1970-01-01
    • 1970-01-01
    • 2014-07-01
    • 2013-12-06
    相关资源
    最近更新 更多