【问题标题】:Static CSS not being applied to django-allauth templates静态 CSS 未应用于 django-allauth 模板
【发布时间】:2020-09-23 14:16:51
【问题描述】:

我的模板似乎无法访问静态 css 文件。该项目使用 all-auth 进行身份验证。我的文件结构如下:

    Project Folder   
      app 1 
      app 2 
      static
        css
          style.css 
       templates
         account
           login.html
           signup.html
          base.html
          home.html

base.html如下:

{% load static %}

<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Shuffle</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link href='{% static "css/style.css" %}' rel="stylesheet">
    </head>
    <body>
        <div id="card">
            {% block content %}
            {% endblock %}
          </div> <!--card -->
    </body>
</html>

其余模板从 base.html 扩展而来。在检查呈现的页面时,所有 html 都是正确的,但缺少样式。

编辑:

错误显示为:

    GET /static/css/style.css HTTP/1.1" 404 1665

设置中的静态目录设置为:

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static")

【问题讨论】:

  • "但缺少样式" 到底发生了什么?未找到 CSS 文件(错误 404)? CSS 文件的完整链接是否正确?
  • @Ralf 错误显示为:“GET /static/css/style.css HTTP/1.1” 404 1665 对于静态文件,设置为: STATIC_URL = '/static/' STATIC_ROOT = os. path.join(BASE_DIR, "静态")
  • 你在使用 djangos runserver 命令和DEBUG=True 吗?如果没有,你好吗serving your static files?
  • @ralf 我正在使用 django 的 runserver 运行,并且设置了 DEBUG=TRUE。我确实安装了所有身份验证。这会影响它吗?

标签: python django django-allauth


【解决方案1】:

您似乎需要添加设置STATICFILES_DIRS。

您的设置中应该包含所有 3 个部分:

STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]

【讨论】:

  • 它在删除 STATIC_ROOT 文件并按照您的建议添加 STATICFILES_DIR 后工作。非常感谢您如此耐心和乐于助人,拉尔夫! :) 看来我还不能在这里投票:(
【解决方案2】:

似乎您的文件夹名为 CSS 全部大写,但在您的模板代码 (&lt;link href='{% static "css/style.css" %}' rel="stylesheet"&gt;) 中,您的文件夹名称为小写 css。

我还看到文件夹Static 的第一个字母大写,但设置代码STATIC_ROOT = os.path.join(BASE_DIR, "static") 的文件夹名称全部小写。

这两者都必须匹配它们的对应物,大写在这部分很重要。

【讨论】:

  • 感谢@ralf 的回复,但我刚刚检查了文件夹,该文件夹在我的文件中是小写的,并且与链接匹配。样式仍未应用
  • 抱歉给您带来了困惑。我所有的文件夹名称都是小写的,并且所有文件都匹配。我已更正问题中的格式。
猜你喜欢
  • 2018-09-19
  • 2013-09-14
  • 2013-02-26
  • 2016-12-13
  • 2020-07-27
  • 1970-01-01
  • 1970-01-01
  • 2020-12-09
  • 1970-01-01
相关资源
最近更新 更多