html页面出现而没有任何样式或图像,因为在django中找不到静态文件
负载:
{% load staticfiles %}
这是静态调用:
<link rel="stylesheet" href="{% static 'fonts/icomoon/style.css' %}">
URL设置:
STATIC_URL = os.path.join(BASE_DIR, "static/")
,所以让我给您一个工作的样本。您的settings.py可能像这样
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]
在这里,我的项目根中有一个名为" static"的文件夹,其中包含诸如'css','js'等文件夹等。您还需要在urls.py中进行设置,以便可以访问它模板。所以我会这样做:
from django.contrib import admin
from django.urls import path
from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
path('', user_login),
path('admin/', admin.site.urls),
]
urlpatterns += staticfiles_urlpatterns()
然后在HTML页面的顶部,导入静态文件
{% load static from staticfiles %}
<link rel="stylesheet" href="{% static 'css/bootstrap.min.css'%}">
<link rel="stylesheet" href="{% static 'css/style.css'%}">
我希望这会有所帮助
您给了static_url的基本路径。
尝试以下设置:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
对于Django 2.0
,在HTML中加载静态文件需要新的加载语法:
{% load static %}