django 靜態檔案及路由分發
阿新 • • 發佈:2021-06-20
靜態檔案
-
靜態檔案配置
-
配置靜態檔案得訪問路徑[該配置預設存在]
-
通過哪個URL地址找到靜態檔案
-
STATIC_URL='/static'
# settings.py STATIC_URL = '/static/'
-
說明:
-
指定訪問呢靜態檔案時需要通過 /static/xxx或 http://127.0.0.1:8000/static/xxx
[xxx表示具體得靜態資源位置]
-
-
-
配置靜態檔案得儲存路徑--STATICFILES_DIRS
STATICFILES_DIRS儲存得是靜態檔案在伺服器端儲存得位置
# setting.py # Static files (CSS, JavaScript, Images) STATICFILES_DIRS= ( os.path.join(BASE_DIR, "static"), ) #模板中訪問靜態檔案 img標籤為例 # html中引入靜態檔案 <img src="http://127.0.0.1:8000/static/img/tupian1.jpg" width='200px' height='200px'> <img src="/static/img/tupian2.jpg" width='200px' height='200px'> # 通過 {% static %} 標籤訪問靜態檔案 1. 載入static {%load static %} 2. 使用靜態資源{% static '靜態檔案路徑' %} 樣例: <img src="{% static 'img/tupian3.jpg'%}"
-
django應用及分散式路由
-
應用在Django專案中是一個獨立得業務模組,可以包含自己得路由、檢視、模型、模板
-
建立應用命令
python manage.py startapp music
- 在settings.py的INSTALLED_APPS列表中配置按照此應用
-
分散式路由
-
Django中,主路由配置檔案urls.py可以不處理使用者的具體路由,主路由配置檔案中可以做請求的分發(分散式請求處理),具體的請求可以由各自的應用來進行處理
-
主路由中呼叫include函式
-
語法: include('app名字.url模組名')
-
作用: 用於將當前路由轉到哥哥應用的路由配置檔案的urlpatterns中進行分散式處理
# 主路由對請求進行轉發 from django.contrib import admin from django.urls import path,include urlpatterns = [ path('admin/', admin.site.urls), path('users/', include('users.urls')), path('index/', include('index.urls')), ] # 具體請求由app應用來處理 from django.urls import path from index import views urlpatterns=[ path('login', views.login_view), path('index', views.index_view), ]
-
-
-
應用下的模板
-
1 手工在應用下建立templates資料夾
-
settings.py中開啟應用模板功能
-
'APP_DIRS': True,
-
應用下templates和專案下templates都存在式,django查詢模板的規則是:
- 優先查詢專案目錄同級的templates目錄下的模板
- 按照INSTALLED_APPS配置的應用順序,逐層查詢
-