轉(zhuǎn)發(fā)和重定向:
我們提供的服務(wù)有:網(wǎng)站建設(shè)、網(wǎng)站制作、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、三水ssl等。為上千余家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的三水網(wǎng)站制作公司轉(zhuǎn)發(fā):一次請(qǐng)求和響應(yīng),請(qǐng)求的地址沒(méi)有發(fā)生變化,如果此時(shí)刷新頁(yè)面,就會(huì)出現(xiàn)重做現(xiàn)象。
重定向:一次以上的請(qǐng)求和響應(yīng),請(qǐng)求地址發(fā)生一次以上的變化,如果此時(shí)刷新頁(yè)面,就不會(huì)發(fā)生重做現(xiàn)象。
我來(lái)舉個(gè)簡(jiǎn)單的列子,比如我手機(jī)號(hào)上不了4G網(wǎng),我打電話給10086,說(shuō)了我這個(gè)情況后,她會(huì)把這個(gè)情況反映給技術(shù)人員,來(lái)幫我解決這個(gè)問(wèn)題,如果說(shuō)我又有這個(gè)問(wèn)題的話直接點(diǎn)擊重播就好了,但我重播的是10086這個(gè)號(hào)碼,然后再有她轉(zhuǎn)給技術(shù)人員,如果再有問(wèn)題還得繼續(xù)這樣,那么就顯得很麻煩了,那這時(shí)候10086的工作人員可以在我撥打10086的時(shí)候直接轉(zhuǎn)到技術(shù)人員哪里,雖然外面的撥的電話是10086,但接的卻是技術(shù)人員的號(hào)碼。雖然這個(gè)例子很垃圾,但差不多就是這個(gè)意思。
這個(gè)問(wèn)題可以在原來(lái)的項(xiàng)目上改一下就可以了,因?yàn)槲仪懊娴捻?xiàng)目早已經(jīng)介紹過(guò)了,所以就不說(shuō)了,就在原來(lái)的文件上進(jìn)行更改
如果不做重定向的話,我們?cè)谔峤挥脩裘兔艽a的時(shí)候,這時(shí)候點(diǎn)刷新時(shí),用戶名和密碼會(huì)一直提交,如果數(shù)據(jù)庫(kù)沒(méi)有做限制的話,那么就會(huì)出現(xiàn)多個(gè)相同的用戶名和密碼。
要解決這個(gè)問(wèn)題,首先我們要做一個(gè)命名空間,將我們注冊(cè)的每個(gè)用戶名用id來(lái)進(jìn)行綁定,確保唯一性,而且注冊(cè)成功后直接跳轉(zhuǎn)到show.html那里去,而且還可以把用戶名和密碼顯示出來(lái)
1. 首先我們要在Djangoproject這個(gè)容器的url.s.py文件里面加入命名空間
我這里寫(xiě)入命名空間,自定義命名空間名為zc,這個(gè)在view.py里面會(huì)寫(xiě)到
2. 根據(jù)我之前寫(xiě)的博客,容器的urls.py會(huì)查找項(xiàng)目的urls.py,這里也要做一些修改
這里我們?cè)?行中寫(xiě)app_name='zc',這句也是命名空間,這是為了對(duì)應(yīng)view.py中redirect函數(shù)里面reverse的zc:show,第6行中加了
3.下面來(lái)看view.py文件
這里我們我多導(dǎo)入兩個(gè)函數(shù),分別是redirect(重定向問(wèn)題)、reverse(解決跳轉(zhuǎn)路徑)。
4. views.py這里我們多定義了一個(gè)show函數(shù),這里加了函數(shù)要在temp1項(xiàng)目下的urls.py下也要加,告訴urls.py有這個(gè)函數(shù)
里面的參數(shù)是id,這個(gè)參數(shù)要從外界獲取,這個(gè)參數(shù)就是
5. 返回的內(nèi)容會(huì)賦值給show.html,我們會(huì)用兩個(gè)參數(shù)來(lái)接收
6. 我們來(lái)運(yùn)行項(xiàng)目并注冊(cè)
7. 然后會(huì)跳轉(zhuǎn)到show頁(yè)面
這里會(huì)把用戶名和密碼顯示出來(lái),而鏈接里面的18則是id,這里表名我們注冊(cè)的用戶名在數(shù)據(jù)庫(kù)里面的id號(hào)是18,我們也可以更改這個(gè)id號(hào),改為17的話則會(huì)顯示出id號(hào)為17的用戶名和密碼。
以上這篇對(duì)Django 轉(zhuǎn)發(fā)和重定向的實(shí)例詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持創(chuàng)新互聯(lián)。