静态文件
管理静态文件
- 项目中的CSS、图片、js都是静态文件
配置静态文件
- 在settings 文件中定义静态内容
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]
- 在项目根目录下创建static目录,再创建当前应用名称的目录
mysite/static/myapp/ # 与manage.py同级
- 在模板中可以使用硬编码
/static/my_app/myexample.jpg
- 在模板中可以使用static编码
{ % load static from staticfiles %}
<img src="{ % static "my_app/myexample.jpg" %}" alt="My image"/>
示例
settings.py
xxxxxxxxxxxxxx STATIC_URL = '/abc2/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static') ]
urls.py
from django.urls import path, re_path from booktest import views urlpatterns = [ path('', views.index), ]
views.py
from django.shortcuts import render def index(request): return render(request, 'booktest/index.html')
index.html
{% load static from staticfiles %} # 1 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <img src="/abc/booktest/a1.jpg" width="100" height="100"/> <hr> <img src="{% static 'booktest/a1.jpg' %}" width="100" height="100"/> # 2 </body> </html>