Django學習筆記-2

基本配置信息

配置信息主要由項目中settings.py文件實現,主要配置有:

  • 項目路徑

  • 密鑰配置

  • 域名訪問權限

  • App列表

  • 配置靜態資源

  • 配置模板文件

  • 數據庫配置

  • 中間件

  • 緩存配置

     settings.py的基本配置如下:
    

    在這裏插入圖片描述

     上述代碼列出了項目路徑BASE_DIR、密鑰配置SECRET_KEY、調試模式DEBUG、訪問權限ALLOWED_HOSTS和App列表INSTALLED_APPS,各個配置說明如下:
     
     ● 項目路徑BASE_DIR:        主要通過os模塊讀取當前項目在系統的具體路徑,代碼在創建項目時自動生成,通常無需修改。
     
     ● 密鑰配置SECURIT_KEY:     是一個隨機值,在項目創建的時候自動生成,通常無需修改。主要用於重要數據的加密處理,提高系統安全性。
     
     ● 調試模式DEBUG:           該值爲布爾類型。開發局階段True,項目部署上線改爲False。
     
     ● 域名訪問權限ALLOWED_HOSTS:設置可訪問的域名,默認爲空。DEBUG=True同時ALLOWD_HOSTS爲空代表項目只允許以localhost或者127.0.0.1在瀏覽器上訪問。DEBUG=False時ALLOWD_HOSTS爲必填項,設置爲ALLOWD_HOSTS=['xxx.xxx.xxx.xxx']
     
     App列表INSTALLED_APPS,告訴django有哪些App,項目中已有配置信息如下:
    
名稱 說明
admin 內置的後臺管理系統
auth 內置的用戶認證系統
contenttypes 記錄項目中的model元數據
sessions Session會話功能,用於標識訪問網站的用戶身份信息
messages 消息提示功能
staticfiles 查找靜態資源路徑
	如果項目中加入了App,需要在INSTALLED_APPS列表中加入App名字,如:

在這裏插入圖片描述

靜態資源

靜態資源指,網站中不變的文件。靜態資源包括CSS文件、JavaScript文件以及圖片等資源文件。
	● CSS(層疊樣式表)	一種用來表現HTML或XML文件樣式的計算機語言。
	● JavaScript        一種直譯式腳本語言在HTML網頁上使用,用於給網頁增加動態功能。
靜態文件存放在配置文件settings.py文件上,如下:

在這裏插入圖片描述

上述配置將靜態資源存放在文件夾static,這個文件夾只能放在App裏面。
項目啓動時,Django根據靜態資源存放路徑查找相關文件,查找功能由App列表INSTALLED_APPS的staticfiles實現。
在index App中添加‘python package’並放置文件。

在這裏插入圖片描述

啓動項目後,瀏覽器訪問:http://127.0.0.1:8000/static/FileName
如果想在djangoDemo的根目錄下存放靜態資源,可以在settings.py中設置STATICFILES_DIRS屬性。
該屬性以列表形式表示,設置方式如下:

在這裏插入圖片描述

分別在根目錄下創建文件夾public_static,在App(index)下創建index_static文件夾。

在這裏插入圖片描述
在這裏插入圖片描述

模塊路徑

模板是一種較爲特殊的HTML文檔。這個文檔中嵌入了一些Python識別的變量和指令,然後程序解析這些變量和命令,生成完整的HTML網頁並返回給用哦過戶瀏覽。

MTV框架中的T。創建項目時,Django已初始化模板配置信息:
名稱 說明
BACKEND 模板引擎,用於識別模板中的變量和指令
DIRS 設置模板所在路徑,告訴Django模板位置
APP_DIRS 是否在App文件中查找模板文件
OPTIONS RequestContex中上下文的調用函數,通常不做修改

在這裏插入圖片描述

在項目根目錄index下分別創建templates文件夾,並在文件夾下創建index.html和app_index.html

在這裏插入圖片描述

根目錄templates通常存放共用的模板文件,能夠提供各個App的模板文件調用,該模板符合代碼重複使用原則,如HTML的<head>部分。
index的templates是存放當前App所需的模板文件。模板配置如下:

在這裏插入圖片描述

數據庫配置

選擇項目所使用的數據庫類型,不同數據庫需要設置不同的數據庫引擎,數據庫引擎用於實現項目與數據庫的連接,
Django提供四種數據庫引擎:

在這裏插入圖片描述

Django除了支持PostgreSQL、Sqlite3、MySQL和Oracle以外,還支持SQLServer和MongoDB的連接。

項目創建時,默認sqlite3數據庫,這是一款輕型的數據庫,常用於嵌入式系統開發,配置信息如下:

在這裏插入圖片描述

如果把上述連接信息修改爲MySQL數據庫,首先安裝MySQL連接模塊‘mysqlclient’ ,輸入命令:
    在線安裝:pip install mysqlclient
    離線安裝:pip install --no-index --find-links=file:E:\ mysqlclient-1.4.1-cp37-cp37m-win_amd64.whl

在這裏插入圖片描述

 完成mysqlclient模塊晚裝後,配置settings.py的MySQL連接信息,如下
 ![在這裏插入圖片描述](https://img-blog.csdnimg.cn/20190613234049604.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIxMTUzOTk3,size_16,color_FFFFFF,t_70)

中間件

中間件是處理Django的request和response對象的過程。當用戶在網站中進行某個按鈕等操作時,這個動作是用戶向網站發送request,
而網站根據操作返回相關內容,這個過程叫response。

在這裏插入圖片描述

一般情況下,Django默認的中間件配置均可滿足大部分的開發需求。在MIDDLEWARE中添加LocalMiddleware中間件,使得Django內置功能
支持中文顯示,如下:

在這裏插入圖片描述

中間件說明:
名稱 說明
SecurityMiddleware 內置安全機制,保護用戶與網站通信安全
SessionMiddleware 會話Session功能
CommonMiddleware 處理請求信息,規範化請求內容
CsrfViewMiddleware 開啓CSRF防護功能
AuthenticationMiddleware 開啓內置用戶驗證系統
MessageMiddleware 開啓內置信息提示功能
XFrameOptionsMiddleware 防止惡意程序點擊劫持
LocalMiddleware 支持中文語言
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章