色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

Django正則URL匹配實(shí)現(xiàn)流程解析

瀏覽:150日期:2024-09-18 14:59:21

一、引子

在day17 作業(yè)中,我們查看主機(jī)詳細(xì)信息的時(shí)候,是通過 在url 中拼接,傳參數(shù)。urls 中匹配 path('detail/',views.detail)

Django正則URL匹配實(shí)現(xiàn)流程解析

這樣url 變成類似 http://127.0.0.1:8000/detail/?nid=2 今天我們來學(xué)習(xí),類似http://127.0.0.1:8000/detail-3.html 這樣的URL

據(jù)說,以前我們使用的方式 ,在seo 時(shí)候算是動態(tài)頁面,后面這種方式算靜態(tài)頁面。可能在做搜索優(yōu)化的時(shí)候有好處吧。

二、開搞栗子

忽略掉數(shù)據(jù)庫,先在 views 新建一個(gè)用戶字典

2.1 動態(tài)頁面的栗子

views 代碼:

info_dic={ 1:{'name':'zhangsan','email':'zhangsan@163.com','age':22}, 2:{'name':'lisi','email':'lisi@163.com','age':27}, 3:{'name':'wangwu','email':'wangwu@163.com','age':29}, 4:{'name':'laoliu','email':'laoliu@163.com','age':30}, 5:{'name':'chenpi','email':'chenpi@163.com','age':32},}def index(request): return render(request,'index.html',{'info_dic':info_dic})def detail(request): nid=request.GET.get('nid') print(nid,type(nid)) info=info_dic.get(int(nid)) print(info) return render(request,'detail.html',{'info':info})

urls

Django正則URL匹配實(shí)現(xiàn)流程解析

前端,index.html,

<!DOCTYPE html><html><head lang='en'> <meta charset='UTF-8'> <title></title></head><body> <h1>用戶信息</h1> <ul> {% for k,v in info_dic.items %} <li><a target='_blank' href='http://www.lshqa.cn/detail/?nid={{ k }}' rel='external nofollow' >{{ v.name }}</a></li> {% endfor %} </ul></body></html>

前端,detail

<!DOCTYPE html><html><head lang='en'> <meta charset='UTF-8'> <title></title></head><body> <h1>用戶詳細(xì)信息</h1> <ul> <li>name:{{ info.name }}</li> <li>email:{{ info.email }}</li> <li>age:{{ info.age }}</li> </ul></body></html>

結(jié)果:

Django正則URL匹配實(shí)現(xiàn)流程解析

Django正則URL匹配實(shí)現(xiàn)流程解析

2.2 下面用 正則表達(dá)式來 搞URL 匹配,靜態(tài)頁面,

urls

Django正則URL匹配實(shí)現(xiàn)流程解析

views ,

直接在函數(shù)中傳參數(shù),nid 形式參數(shù)。不像之前需要自己到 reques.method 中去取

Django正則URL匹配實(shí)現(xiàn)流程解析

結(jié)果

Django正則URL匹配實(shí)現(xiàn)流程解析

上面的栗子中,我們得知參數(shù)是通過形參傳遞的,類似定義函數(shù)的形參數(shù),

下面再搞一個(gè)栗子驗(yàn)證

Django正則URL匹配實(shí)現(xiàn)流程解析

Django正則URL匹配實(shí)現(xiàn)流程解析

Django正則URL匹配實(shí)現(xiàn)流程解析

Django正則URL匹配實(shí)現(xiàn)流程解析

參數(shù)位置變換后 ,獲取的數(shù)值也變了

Django正則URL匹配實(shí)現(xiàn)流程解析

三、分組傳參

在上面的栗子中,我們知道如果不分組,那么參數(shù)就是類似函數(shù)的位置參數(shù),靠天吃飯,

很顯然,這樣不方便我們在實(shí)際的使用中去調(diào)用。那么使用關(guān)鍵字參數(shù)呢,在URL 匹配中就需要分組

下面搞栗子,變換nid,uid 位置之后,打印的結(jié)果是一樣的。

Django正則URL匹配實(shí)現(xiàn)流程解析

位置參數(shù)可以在 *arg 中獲取,關(guān)鍵字參數(shù)可以在 **kwargs 中獲取

Django正則URL匹配實(shí)現(xiàn)流程解析

四、總結(jié)

路由系統(tǒng):URL

普通url:re_path(’^index/’,view.index),re_path(’^home/’,view.Home.as_view()) 順序傳參:re_path(r’^detail-(d+)-(d+).html/’,views.detail),這個(gè)用*args接收 關(guān)鍵字傳參:re_path(r’^detail-(?P<nid>d+)-(?P<uid>d+).html/’,views.detail),這個(gè)用**kwargs接收,推薦使用這個(gè)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Django
相關(guān)文章:
主站蜘蛛池模板: 9丨精品国产高清自在线看 ⅹxx中国xxx人妖 | 亚洲国产精品不卡毛片a在线 | 成人天堂av | 国产免费福利体检区久久 | 久久国产免费观看 | 美女免费黄网站 | 久久中出 | 日韩国产欧美视频 | 亚洲精品一区二三区在线观看 | 精品91精品91精品国产片 | 亚洲一区日韩一区欧美一区a | 精品久久久久久久高清 | 高清一级淫片a级中文字幕 高清一区二区 | 成人亚洲精品一区二区 | 久久精品视频大全 | 国产日韩精品一区在线不卡 | 国产综合成人亚洲区 | 国产成人亚洲综合91精品555 | 高清大学生毛片一级 | 久草播放 | 国产在线一区二区三区四区 | 欧美成人手机视频 | 黄色美女免费网站 | 国产在线爱做人成小视频 | 国产亚洲欧美日韩在线观看一区二区 | 亚洲91精品| 国产在线观看网址在线视频 | 国产大片免费天天看 | 女人张开腿让男人桶个爽 | 午夜国产视频 | 一个人看的日本免费视频 | 日韩在线视频中文字幕 | 澳门一级特黄真人毛片 | 欧美深夜在线 | 亚洲精品视频久久久 | 国产在线观看网址你懂得 | 国产成人在线视频网站 | 美女视频黄a视频美女大全 美女视频黄a视频免费全程 | 日韩美女一区 | 女人一级特纯黄大片色 | 国产日韩欧美三级 |