在Django中,經過瀏覽器去請求一個頁面時,使用視圖函數來處理這個請求的,視圖函數處理以後,要給瀏覽器返回頁面內容。html
一、視圖函數的使用python
二、 url匹配的過程
在項目的urls.py文件中包含具體應用的urls.py文件,應用的urls.py文件中寫url和視圖函數的對應關係。
當用戶輸入如http://127.0.0.1:8000/aindex時,去除域名和最前面的/,剩下aindex,拿aindex字符串到項目的urls文件中進行匹配,配置成功以後,去除匹配的a字符,拿剩下的index字符串繼續到應用的urls文件中進行正則匹配,匹配成功以後執行視圖函數index,index視圖函數返回內容hello python給瀏覽器來顯示。web
三、視圖的功能正則表達式
接收請求,進行處理,與M和T進行交互,返回應答。 返回html內容 HttpResponse,也可能重定向 redirect,還能夠返回json數據。
四、視圖函數使用django
1)定義視圖函數
request參數必須有。是一個HttpRequest類型的對象。參數名能夠變化,
但不要更改。
2)配置url
創建url和視圖函數之間的對應關係。
2.2 url配置的過程
1)在項目的urls文件中包含具體應用的urls文件,在具體應用的urls文件中包含具體url和視圖的對應關係。
2)url配置項是定義在一個名叫urlpatterns的列表中,其中的每個元素就是一個配置項,每個配置項都調用url函數。
3.url匹配的過程
url:http://127.0.0.1:8000/aindex?a=1json
五、錯誤視圖瀏覽器
404:找不到頁面,關閉調試模式以後,默認會顯示一個標準的錯誤頁面,若是要顯示自定義的頁面,則須要的templates目錄下面自定義一個404.html文件。
a)url沒有配置
b)url配置錯誤
500: 服務器端的錯誤。
a)視圖出錯
網站開發完成須要關閉調試模式,在settings.py文件中:
DEBUG=False
ALLOWED_HOST=[ ‘*’]服務器
6.捕獲url參數框架
進行url匹配時,把所須要的捕獲的部分設置成一個正則表達式組,這樣django框架就會自動把匹配成功後相應組的內容做爲參數傳遞給視圖函數。
1)位置參數
位置參數,參數名能夠隨意指定
2)關鍵字參數:在位置參數的基礎上給正則表達式組命名便可。
?P<組名>
關鍵字參數,視圖中參數名必須和正則表達式組名一致.svg
七、類視圖的使用
例如:
class IndexView(View): def get(self,request): pass def post(self,request): pass