1. 程式人生 > >Django視圖函數的使用

Django視圖函數的使用

創建項目 定義 tin 環境 執行 fff allow 默認 找不到

1.使用

(1)定義視圖函數
request 參數必須有。是一個HttpRequest類型的對象。參數名可以變化,但不要更改。

(2)配置url

建立url和視圖函數之間的對應關系

2.url配置的過程

(1)在項目的urls文件中包含具體應用的urls文件,在具體應用的urls文件中包含具體url和視圖的對應關系。

(2)url配置項是定義在一個名叫urlpatterns的列表中,其中的每一個元素就是一個配置項,每一個配置項都調用url函數。

回顧案例:test3

(1)進入虛擬環境, 創建項目,創建應用

技術分享圖片

(2)在項目settings.py 文件INSTALLEN_APPS註冊應用

技術分享圖片

在TEMPLATES註冊模板路徑,新建templates文件夾

技術分享圖片

在DATABASES使用MySQL
技術分享圖片

(3)在項目init.py文件導入MySQL

技術分享圖片

(4)新建html文件

技術分享圖片

(5)在項目文件urls.py包含應用url

技術分享圖片

(6)在應用文件夾新建urls.py文件,正則匹配,調用views的函數

技術分享圖片

(7)應用views.py的函數渲染html

技術分享圖片

(8)啟動項目
技術分享圖片

(9)輸入地址

技術分享圖片

3.url匹配過程

技術分享圖片

4.錯誤視圖

(1)404:找不到頁面,關閉調試模式之後,默認會顯示一個標準的錯誤頁面,如果要顯示自定義的頁面,則需要的templates目錄下面自定義一個404.html文件

技術分享圖片

(a)url沒有配置

(b)url配置錯誤

(2)500:服務器端的錯誤。

技術分享圖片

(a)視圖出錯

網站開發完成需要關閉調試模式,在settings.py文件中:

DEBUG=False

ALLOWED_HOST=[‘ * ‘]

技術分享圖片

5.捕獲url參數

進行url匹配時,把所需要的捕獲的部分設置成一個正則表達式組,這樣django框架就會自動把匹配成功後相應組的內容作為參數傳遞給視圖函數。

(1)位置參數

參數名可以隨意指定

(a)捕獲url參數,把組參數傳給函數
技術分享圖片

(b)函數返回給瀏覽器
技術分享圖片

(c)輸入
技術分享圖片

(2)關鍵字參數:在位置參數的基礎上給正則表達式組命名即可

?P<組名>

關鍵字參數,視圖中參數名必須和正則表達式組名一致

(a)捕獲
技術分享圖片

(b)函數返回給瀏覽器,組名和函數的變量要同名

技術分享圖片

(c)輸入
技術分享圖片

6.普通登錄案例

過程:

技術分享圖片

(1)顯示出登錄頁面

(a)設計url,通過瀏覽器訪問 http://127.0.0.1:8000/login 顯示登錄頁面

(b)設計url對應的視圖函數login

技術分享圖片

(c)編寫模板文件 login.html,action:跳轉頁面
技術分享圖片
技術分享圖片

(2)登錄校驗

(a)QueryDict類型的使用,類似字典
技術分享圖片
技術分享圖片

(b)views.py的校驗函數

技術分享圖片

(c)屬性

技術分享圖片

7.ajax請求

(1)原理

技術分享圖片

(2)過程

技術分享圖片

(3)創建靜態目錄,項目下添加static文件夾,包括js,css,images文件夾

技術分享圖片

(4)創建test_ajax.html

技術分享圖片

(5)在views.py設test_ajax.html渲染函數,返回值
技術分享圖片

(6)在urls.py添加ajax請求地址
技術分享圖片

(7)第一次全刷新,第二次部分刷新
技術分享圖片

8.ajax同步和異步

技術分享圖片

默認異步,不等返回信息一直往下執行

同步,設置‘async‘:false ,等待信息返回再執行

Django視圖函數的使用