這篇文章主要介紹了django模板配置視圖和url的方法,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
甘孜州網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)于2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
在創(chuàng)建項(xiàng)目時(shí),Django會(huì)自動(dòng)創(chuàng)建URL配置,在urls.py文件中
文件的默認(rèn)內(nèi)容如下所示:
"""mysite URL Configuration The urlpatterns list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/1.8/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') Including another URLconf 1. Add an import: from blog import urls as blog_urls 2. Add a URL to urlpatterns: url(r'^blog/', include(blog_urls)) """ from django.conf.urls import include, url from django.contrib import admin urlpatterns = [ url(r'^admin/', include(admin.site.urls)), ]
去掉注釋,剩下的都是精華,逐行分析:
第一行從 django.conf.urls 模塊中導(dǎo)入兩個(gè)函數(shù):include,用于導(dǎo)入另一個(gè) URL 配置模塊;url,使用正則表達(dá)式模式匹配瀏覽器中的 URL,把它映射到 Django 項(xiàng)目中的某個(gè)模塊上。
第二行從 django.contrib 模塊中導(dǎo)入 admin 函數(shù)。這個(gè)函數(shù)傳給 include 函數(shù),加載 Django 管理后臺(tái)的 URL。
第三行是 urlpatterns,即 url() 實(shí)例列表。Django期待URL配置中有urlpatterns這個(gè)對(duì)象,它負(fù)責(zé)定義 URL 與處理URL 的代碼之間的映射。在 URL 配置中添加 URL 和視圖的方式是,把 URL 模式映射到視圖函數(shù)上。
注意:
url函數(shù)的第一個(gè)參數(shù)是正則表達(dá)式,第二個(gè)是視圖函數(shù)
如果我們指定的URL模式要求末尾有/,默認(rèn)情況下,如果請(qǐng)求的 URL 不匹配任何 URL 模式,而且末尾沒有斜線,那么 Django 會(huì)把它重定向到末尾帶斜線的 URL
我們以對(duì)象的形式傳入視圖函數(shù),而沒有調(diào)用函數(shù)
Django處理請(qǐng)求的過程
創(chuàng)建Django項(xiàng)目時(shí),自動(dòng)創(chuàng)建了setting.py文件,保存了當(dāng)前項(xiàng)目的全部配置,各個(gè)配置的名稱都是大寫,例如TEMPLATE_DIRS,DATABASES等,其中ROOT_URLCONF,指向自動(dòng)生成的urls.py,它告訴Django,網(wǎng)站的URL配置在哪個(gè)Python模塊。收到針對(duì)某個(gè) URL的請(qǐng)求時(shí),Django 加載 ROOT_URLCONF 設(shè)置指定的 URL 配置;然后按順序檢查 URL 配置中的各個(gè) URL 模式,依次與請(qǐng)求的 URL 比 較,直到找到匹配的模式為止。
找到匹配的模式后,調(diào)用對(duì)應(yīng)的視圖函數(shù),把一個(gè)HttpRequest對(duì)象作為第一個(gè)參數(shù)傳給視圖函數(shù),視圖函數(shù)必須返回一個(gè)HttpResponse對(duì)象。
綜上,整個(gè)過程如下:
收到請(qǐng)求
Django查看ROOT_URLCONF設(shè)置,找到根URL配置
Django比較URL配置中的各個(gè)URL模式,找到與請(qǐng)求匹配的那個(gè)
如果找到,調(diào)用對(duì)應(yīng)的視圖函數(shù)
視圖函數(shù)返回一個(gè)HttpResponse對(duì)象
Django把HttpResponse對(duì)象轉(zhuǎn)換成正確的HTTP響應(yīng),得到網(wǎng)頁。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享django模板配置視圖和url的方法內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!
當(dāng)前標(biāo)題:django模板配置視圖和url的方法
文章地址:http://chinadenli.net/article6/gphsog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、建站公司、網(wǎng)站制作、標(biāo)簽優(yōu)化、云服務(wù)器、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
移動(dòng)網(wǎng)站建設(shè)知識(shí)