django - 靜態檔案
阿新 • • 發佈:2021-11-03
什麼是靜態檔案
- 如:圖片,css,js,音訊,視訊
靜態檔案配置 - settings.py中
1、配置靜態檔案的訪問路徑【該配置預設存在】
- 通過哪個url地址找靜態檔案
- STATIC_URL = '/static/'
- 說明:
- 指定訪問靜態檔案時是需要通過 /static/xxx或 http://127.0.0.1:8000/static/xxx 【xxx表示具體的靜態資源位置】
2、配置靜態檔案的儲存路徑STATICFILES_DIRS
STATICFILES_DIRS儲存的是靜態檔案在伺服器端的儲存位置
# file: setting.py # 在setting.py末尾新增: STATICFILES_DIRS = ( os.path.join(BASE_DIR,"static"), )
在第一個Project01中建立目錄static
在目錄static中建立目錄image放圖片檔案,建立目錄js專門放js檔案
模板中訪問靜態檔案 - img標籤為例
方案1 - 直接拼接訪問路徑
<img src="/static/image/Django02.png" > 或者 <img src="http://127.0.0.1:8000/static/image/Django02.png" >
方案2
通過{% static %}標籤訪問靜態檔案
- 載入 static - {% load static %}
- 使用靜態資源 - {% static '靜態資源路徑' %}
- 樣例
- <img src="{% static 'images/lena.jpg'%}">
# 在views.py檔案中 from django.shortcuts import render def test_static(request): return render(request, 'test_static.html')
# 在test_static.html檔案中 <body> <img src="http://127.0.0.1:8000/static/image/Django02.png" width="200px" height="200px"/> <img src="/static/image/Django02.png" width="200px" height="200px"/> {% load static %} <img src="{% static 'image/Django02.png'%}" width="200px" height="200px"> </body>
# 在urls.py檔案中 urlpatterns = [ path('admin/', admin.site.urls), path('text_static', views.test_static), ]