css - 无法在 Django 中加载 CSS
问题描述
我是 Django 新手,现在加载 css 文件时遇到问题。我的 Windows 系统中有这个目录树:
情况1:
.
|__myproject
|__+myproject
|__+myapp
|__-static
| |__-css
| |__style.css
|__-templates
|__base.html
base.html =>
<!DOCTYPE html>
{% load static %}
<html>
<head>
<link rel="stylesheet" href="{% static 'css/style.css' %}" type="text/css">
</head>
<body>
# ...
</body>
</html>
设置.py =>
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
TEMPLATE_DIR = os.path.join(BASE_DIR, "templates")
STATICFILES_DIR = os.path.join(BASE_DIR, "static")
STATIC_URL = '/static/'
STATICFILES_DIRS = [
STATICFILES_DIR,
]
INSTALLED_APPS = [
# ...
'django.contrib.staticfiles',
# ...
]
TEMPLATES = [
{
# ...
'DIRS': [TEMPLATE_DIR,],
# ...
},
]
使用这些设置和配置,无法加载 CSS 文件。
但是当我将目录树更改为此:
案例2:
.
|__+myproject
|__+myapp
|__-static
| |__style.css
|__-templates
|__base.html
和 base.html =>
# ...
<link rel="stylesheet" href="{% static 'style.css' %}" type="text/css">
# ...
现在它正在工作。
那么案例1有什么问题呢?这里缺少什么?
解决方案
你写了一些不方便的代码。
<!DOCTYPE html>
应该是第一行。然后{% load static %}
2.使用不同类型的报价。(" " 和 ' ') 用于 href 和 static。
3.在链接中使用 type="text/css"。像这样-
<link rel="stylesheet" href="{% static 'css/style.css' %}" type="text/css">
*在您的代码计算机中,(“{% static”)和(“%}”)是两个单独的字符串,因此style.css
超出了语法范围。对于这种特殊情况(引号内的引号)python 支持 (" ") 和 (' ')(请参阅文本颜色)*
我希望这会有所帮助。谢谢。
推荐阅读
- python - 从 CSV 文件中读取第二行到 Python
- android-studio - Android Studio 3.2.1:即使代码中没有错误,单击静默模式切换应用程序也会崩溃
- python - 如何在没有字符串解析的情况下解析 Python 中的 ValueError?
- apache-spark - Spark:Avro 与 Parquet 的表现
- java - Gradle 无法正确加载 org.apache.logging.log4j 依赖项
- linux - Imageick 执行 GS 脚本失败
- c - (pthread) 如何制作动态数组互斥锁?
- amazon-cloudformation - Fn::GetAtt 的无服务器 CloudFormation 模板错误实例引用未定义的资源
- database - 与数据相关的 ComboBox
- amazon-web-services - Kubernetes:无法从 EKS pod 访问 RDS Postgres