3. 配置 settings.py 及相關參數說明
3.1 配置setting.py文件
-
設置setting.py文件
加入安裝的庫
'apps.erp_test', 'rest_framework', 'django_filters', 'drf_spectacular',
加入新增的APP
'users'
-
啟動項目
# 運行項目先執行數據庫相關操作,再啟動 django 項目 python manage.py makemigrations python manage.py migrate python manage.py runserver
3.2 相關參數說明
3.2.1 BASE_DIR
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
當前工程的根目錄,Django會依此來定位工程內的相關文件,我們也可以使用該參數來構造文件路徑。
3.2.2 DEBUG
調試模式,創建工程后初始值為True,即默認工作在調試模式下。
作用:
修改代碼文件,程序自動重啟
Django程序出現異常時,向前端顯示詳細的錯誤追蹤信息.而非調試模式下,僅返回Server Error (500)
注意:部署線上運行的Django不要運行在調式模式下,記得修改DEBUG=False和ALLOW_HOSTS。
3.2.3 本地語言與時區
Django支持本地化處理,即顯示語言與時區支持本地化。
本地化是將顯示的語言、時間等使用本地的習慣,這里的本地化就是進行中國化,中國大陸地區使用簡體中文,時區使用亞洲/上海時區,注意這里不使用北京時區表示。
初始化的工程默認語言和時區為英語和UTC標準時區
LANGUAGE_CODE = 'en-us' # 語言
TIME_ZONE = 'UTC' # 時區# 時區
將語言和時區修改為中國大陸信息
LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Asia/Shanghai'
3.3 靜態文件
項目中的CSS、圖片、js都是靜態文件。一般會將靜態文件放到一個單獨的目錄中,以方便管理。在html頁面中調用時,也需要指定靜態文件的路徑,Django中提供了一種解析的方式配置靜態文件路徑。靜態文件可以放在項目根目錄下,也可以放在應用的目錄下,由于有些靜態文件在項目中是通用的,所以推薦放在項目的根目錄下,方便管理。
為了提供靜態文件,需要配置兩個參數:
- STATICFILES_DIRS存放查找靜態文件的目錄
- STATIC_URL訪問靜態文件的URL前綴
示例
1) 在項目根目錄下創建static目錄來保存靜態文件。
2) 在ezfy/settings.py中修改靜態文件的兩個參數為
STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static'),
]
3)此時在static添加的任何靜態文件都可以使用網址**/static/文件在static中的路徑**來訪問了。
例如,我們向static目錄中添加一個index.html文件,在瀏覽器中就可以使用127.0.0.1:8000/static/index.html來訪問。
或者我們在static目錄中添加了一個子目錄和文件book/detail.html,在瀏覽器中就可以使用127.0.0.1:8000/static/book/detail.html來訪問。
3.4 App應用配置
在每個應用目錄中都包含了apps.py文件,用于保存該應用的相關信息。
在創建應用時,Django會向apps.py文件中寫入一個該應用的配置類,如
from django.apps import AppConfigclass BookConfig(AppConfig):name = 'user'
我們將此類添加到工程settings.py中的INSTALLED_APPS列表中,表明注冊安裝具備此配置屬性的應用。
- AppConfig.name屬性表示這個配置類是加載到哪個應用的,每個配置類必須包含此屬性,默認自動生成。
- AppConfig.verbose_name屬性用于設置該應用的直觀可讀的名字,此名字在Django提供的Admin管理站點中會顯示,如
from django.apps import AppConfigclass UsersConfig(AppConfig):name = 'user'verbose_name = '圖書管理員'
參考
DataWhale開源人工智能社區
DataWhale-Sweettalk-Django4.2