我的 html 文件没有读取我的 css 文件 - 我已经尝试搜索与此问题相关的所有问题,但仍然无法读取 css 文件。这是我拥有的:
设置.py
import os
import os.path
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
...
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
...
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "form/static")
)
index.html 的开头
{% load staticfiles %}
<!DOCTYPE html>
<html leng="en">
<head>
<title>Test</title>
<link rel="stylesheet"
href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet"
href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-
theme.min.css">
<link rel="stylesheet" href="{% static 'css/main.css' %}" />
</head>
我的“static”和“templates”文件夹在同一层,main.css在static/css/main.css
编辑: 如果有帮助,我的 Bootstrap 链接将被识别,只有 main.css 不是。
更新: 从 settings.py 中删除了 STATICFILES_DIRS 并添加了 STATIC_ROOT = os.path.join(BASE_DIR, "form/static") 如上所述。
我的文件结构:
app
app
- settings.py
form
- static
- css
- main.css
- templates
- form
- index.html
最佳答案
尝试运行 python manage.py collectstatic
。这会从您的 STATICFILES_DIRS
收集静态文件,并将它们放在 STATIC_ROOT
中,staticfiles 应用程序将在其中查找它们并为其提供服务。
如果您的 Django 应用程序在另一个服务器(如 nginx、apache、uwsgi 或 gunicorn)后面运行,您的服务器的配置也可以改变文件的服务方式。看看 Django 的 managing static files文档以获取更多信息。
关于python - 在 Django 中将 CSS(和一般的静态文件)链接到 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48819066/