📜  django 不会加载静态 css (1)

📅  最后修改于: 2023-12-03 15:30:29.637000             🧑  作者: Mango

Django 不会加载静态 css

问题描述

在 Django 中,很多开发者可能会碰到“静态 css 不会加载”的问题。具体表现就是在浏览器中打开页面时,发现 css 样式没有生效,页面布局很丑,很多元素排列混乱。

原因分析

在 Django 中,加载静态文件(包括 css 、js 等)需要开发者手动配置相关参数。如果没有正确配置,就会导致静态文件无法加载,从而出现上述情况。

解决方法
1. 配置静态文件路径

在项目的 settings.py 文件中,添加以下配置:

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

其中,STATIC_URL 表示静态文件的 URL,STATICFILES_DIRS 表示静态文件的存放路径。

2. 加载静态文件

在模板中,使用以下标签加载静态文件:

{% load static %}

<link rel="stylesheet" href="{% static 'css/style.css' %}">

其中,{% load static %} 表示加载静态文件模板标签,{% static 'css/style.css' %} 表示加载 css 文件。

3. 运行 collectstatic 命令

如果项目中使用了第三方库,可能需要用到该库提供的静态文件。此时需要运行以下命令收集静态文件:

python manage.py collectstatic

该命令会将项目中所有静态文件以及第三方库提供的静态文件收集到 STATIC_ROOT 目录下。

结论

在 Django 中,正确配置静态文件路径、加载静态文件、运行 collectstatic 命令是确保静态文件被正确加载的关键。使用以上三个方法,即可解决“Django 不会加载静态 css”问题。