python - 为什么在 Django 项目中加载了引导程序而我的 CSS 文件没有?
问题描述
我是Python/Django的新手,我正在尝试创建一个小项目。我在Ubuntu 20.04 LTS上运行Python 3.8.2和Django 3.0.6。
我仍在开发中,所以我正在使用"python manage.py runserver" (debug=True)测试和运行网页。我很难尝试加载自己的CSS样式。
该项目是这样组织的:
PROJECT FOLDER
| --virtualenv
| --media
| --myproject
| --myapp
| --migrations
| --templates
| --myapp
| --static
| --favicon
| --style
| --vendor
| --bootstrap
| --jquery
| --templates
| --parcials
我在与静态文件相关的“settings.py”(位于“myproject”文件夹中)中有此配置:
INSTALLED_APPS = [
...
'django.contrib.staticfiles',
...
]
STATIC_URL = '/static/'
STATICFILES_DIRS = (os.path.join(
BASE_DIR, '/myapp/static'), )
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
在呈现的html的头部,我有:
{% load static %}
...
<link href="{% static 'favicon/favicon.ico' %}" rel="shortcut icon">
<link href="{% static 'vendor/bootstrap/css/bootstrap.css' %}" rel="stylesheet">
<link href="{% static 'vendor/bootstrap/css/theme_1564087106285.css' %}" rel="stylesheet">
<link hrel="{% static 'style/index.css' %}" rel="stylesheet" type="text/css">
“ index.css”位于样式文件夹内,它只有一个类选择器:
.style-v1 {
font-size: x-large;
background-color: blue;
}
在html body中,我只是尝试测试css加载:
<div class="style-v1">
CSS loading test
</div>
我不知道我是忘记了什么还是有什么问题,我在PYTHON/DJANGO/HTML/CSS中仍然很新鲜,但是引导程序以及favicon和“index.css”都可以正常工作未加载,我在Chrome 开发工具的网络选项卡中检查了它。
我为任何错字道歉,或者如果我的描述不足以完全理解问题,我也是这个社区的新发布问题。如果有人能帮我解决这个问题,我将不胜感激。
我最诚挚的问候!
编辑:@Anoop K George,找出问题所在,这是链接属性“href”中的错字,显然我没有注意到我输入了“hrel”。
解决方案
根据 Django 约定,在静态文件夹中的应用名称中创建一个文件夹,并将所有静态文件移动到其中。
项目文件夹
| --virtualenv
| --media
| --myproject
| --myapp
| --migrations
| --templates
| --myapp
| --static
| --myapp
| --favicon
| --style
| --vendor
| --bootstrap
| --jquery
| --templates
| --parcials