日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Django視圖、傳參和forms驗證操作

瀏覽:27日期:2024-09-25 13:04:30

簡介視圖

主要內容:URLconf、HttpRequest對象、HttpResponse

1)視圖接受Web請求并且返回Web響應

2)視圖就是一個python函數,被定義在views.py中

3)響應可以是一張網頁的HTML內容,一個重定向,一個404錯誤等等

4)在http請求中產生兩個核心對象,所在位置是,django.http:

http請求:HttpRequest對象

http響應:HttpResponse對象

這兩個對象是由django幫我構造的

URLconf相關概述

• 在settings.py文件中通過ROOT_URLCONF指定根級url的配置

• urlpatterns是一個url()實例的列表,我們把它稱為路由,它里面的每一個url()我們稱為路由配置

• 一個url()對象包括:正則表達式、視圖函數、可選參數、名稱name

• 請求的url被看做是一個普通的python字符串,進行匹配時不包括get或post請求的參數及域名。

字典Context={}上下文,在html頁面里有參數時要封裝到字典里作為render的第三個參數返回也可以直接寫字典存變量 context={’name’:’lm’}

在html模板語言里:模板語言注釋{#顯示。。#} 在模板里顯示變量時用{{’name’}}用來顯示變量。(取消字典context的{})

for循環:

{% for num in b %} b為列表

{{num}}

{%endfor%}<br>

{% for key,value in c.items %} #c為字典

{{key}}---->{{value}}

{% endfor %}<br>

{% if 條件 %} 滿足條件執行語句{% else %}不滿足條件的語句 {% endif %}

URL的反向解析(軟連接)

如果在視圖、模板中使用硬編碼的鏈接,在urlconf發生改變時維護是一件非常麻煩的事情

解決:在做鏈接時,通過指向urlconf的名稱,也就是我們配置的namespace和name,動態生成鏈接地址

網頁模板語言的路徑的表示'{% url ’namesapce(分發路徑的名字):name(url的別名)’%}'

視圖:使用django.core.urlresolvers.reverse()函數

在模板語言中()[]是非法的用就報錯

路由配置

include這個方法,會把經過主路由匹配成功后剩下的路徑,分發給我們app里面的子路由去處理,它并不是嚴格匹配,正則是沒有結束符$的,第一個參數代表分發給哪個路由配置文件去處理,第二個參數namespace代表反向解析,和url()當中name參數作用類似。

主路由配置:主路由就是我們項目設置文件夾當中和settings.py文件同級的那個urls.py文件里面的urlpatterns。把主路由當作調度分發路由的工具。 首頁放在主路由

子路由:分成不同的app模塊(app里配置urls.py文件)主路由判斷分子路由操作

urlpatterns 里的include為子路由分發。主路由的urlpatterns里的url(r’^news/’,include(’news.urls’,namespace='news')) news為應用模塊

路徑傳參(位置和關鍵詞)模板語言在大括號里{% url ’news:news_date’2018 4 20 %}

未命名正則表達式組傳參(位置傳參):url(r’/(d+)/(d+)/(d+)/$’)

Django視圖、傳參和forms驗證操作

視圖函數如下

Django視圖、傳參和forms驗證操作

命名正則表達式組傳參(關鍵字傳參):視圖函數中的參數可以是亂序

url(r’/(?P<year>d+)/(?P<mouth>d+)/(?p<day>d+)/$’)

Django視圖、傳參和forms驗證操作

請求方式傳參:模版語言傳參:{% url ’news:news_date’%}?name=lm&a=5 與url路徑無關

Django視圖、傳參和forms驗證操作

所有form表單提交都需要forms驗證,再前端form表單需要制定提交路徑 action='{% url ’users:user_register’ %}'

與方式method='post'

在user的app中創建forms.py文件,填寫驗證條件

from django import formsfrom captcha.fields import CaptchaFieldfrom .models import UserProfile,EmailVerify class UserRegisterForm(forms.Form): email = forms.EmailField(required=True,error_messages={ ’required’:’郵箱必須填寫’ }) password = forms.CharField(min_length=3,max_length=20,required=True,error_messages={ ’required’: ’密碼必須填寫’, ’min_length’:’密碼最少得3個’, ’max_length’: ’密碼最多20個’, }) captcha = CaptchaField(error_messages={ ’invalid’:’驗證碼錯誤’ })

在views.py文件中

from .forms import UserRegisterFormdef user_register(request): if request.method == ’GET’: user_register_form = UserRegisterForm() return render(request,’users/register.html’,{ ’user_register_form’:user_register_form }) else: user_register_form = UserRegisterForm(request.POST)#進行驗證 if user_register_form.is_valid():#判斷是否合法 email = user_register_form.cleaned_data[’email’]#獲取request數據 password = user_register_form.cleaned_data[’password’] user = UserProfile.objects.filter(Q(email=email)|Q(username=email)) if user: return render(request,’users/register.html’,{ ’msg’:’用戶已經存在’ }) else: a = UserProfile() a.username = email a.email = email a.set_password(password)#加密密碼 a.si_active=False#設置密碼未激活,需要郵箱驗證激活 a.save() else: return render(request,’users/register.html’,{ ’user_register_form’:user_register_form })

獲得參數用:zhaoliying=request.GET.get(’name’,None) GET類字典(可以一鍵多值用getlist取值) None沒有參數默認返回None。前端傳到后端的數據都為字符串

CSRF跨站偽造攻擊錯誤。在獲取POST方式傳遞的參數時,要取消錯誤在form表單里加入 {% csrf_token %}

HttpReqeust對象

下面除非特別說明,屬性都是只讀的,都是字符串

1)path:一個字符串,表示請求的頁面的完整路徑,不包含域名和請求參數

2)method:一個字符串,表示請求使用的HTTP方法,常用值包括:’GET’、’POST’

3)encoding:一個字符串,表示提交的數據的編碼方式

A)如果為None則表示使用瀏覽器的默認設置,一般為utf-8

B)這個屬性是可寫的,可以通過修改它來修改訪問表單數據使用的編碼,接下來對屬性的任何訪問將使用新的encoding值

4)GET:一個類似于字典QueryDict的對象,包含get請求方式的所有參數,與url請求地址中的參數對應,位于?后面參數的格式是鍵值對,如key1=value1。多個參數之間,使用&連接。獲得參數用:data = request.GET.get(‘鍵’,默認)獲取

5)POST:一個類似于字典QueryDict的對象,包含post請求方式的所有參數。控件要有name屬性,則name屬性的值為鍵,value屬性的值為鍵,構成鍵值對提交。獲得參數用:data = request.POST.get(‘鍵’,默認)獲取

6)FILES:一個類似于字典的對象,包含所有的上傳文件

7)COOKIES:一個標準的Python字典,包含所有的cookie,鍵和值都為字符串

8)session:一個既可讀又可寫的類似于字典的對象,表示當前的會話,只有當Django 啟用會話的支持時才可用,詳細內容見“狀態保持”與python字典不同,QueryDict類型的對象用來處理同一個鍵帶有多個值的情況。

關于cookie的操作

1)Cookie,有時也用其復數形式 Cookies,指某些網站為了辨別用戶身份、進行 session 跟蹤而儲存在用戶本地終端上的數據(通常經過加密)。定義于 RFC2109 和 2965 中的都已廢棄,最新取代的規范是 RFC6265 [1] 。(可以叫做瀏覽器緩存)

2)cookie是服務器設置存儲在瀏覽器的一段文本信息,例如用戶登錄的時候不用輸入密碼了。

以上這篇Django視圖、傳參和forms驗證操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Django
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩 欧美一区二区三区| 99视频精品免费观看| 激情久久久久久久| 超碰超碰人人人人精品| 黄色网一区二区| 精品一区不卡| 精品国产三区在线| 日本欧美国产| 中文字幕在线视频网站| а√天堂8资源在线| av最新在线| 久久中文在线| 中文字幕在线看片| 精精国产xxxx视频在线播放| 亚洲国产专区| 国产亚洲一级| 日韩中文字幕91| 深夜福利一区| 欧美亚洲自偷自偷| 国产乱码精品一区二区亚洲| 国产精品最新自拍| 国产一区二区三区探花| 深夜福利视频一区二区| 日本欧美不卡| 另类av一区二区| 91在线成人| 国产精品久久久免费| 久久精品国产亚洲aⅴ| 高清av一区| 91p九色成人| 精品国产不卡| 日本a口亚洲| 国产精品毛片久久久| 欧美日韩第一| 国产精品呻吟| 亚洲欧洲日本mm| 国产精品久av福利在线观看| 特黄毛片在线观看| 国产精品中文| 久久久国产亚洲精品| 久久精品国产99国产精品| 美女性感视频久久| 精品亚洲a∨一区二区三区18| 国产不卡精品在线| 亚洲自拍另类| 国产精品久av福利在线观看| 亚洲婷婷免费| 青青草91视频| 国产激情在线播放| 亚洲精品乱码久久久久久蜜桃麻豆 | 国产精品一区二区三区四区在线观看| 国产精品久久观看| 久久av网址| 亚洲精品伊人| 国产精品美女午夜爽爽| 日韩欧美字幕| 三级在线观看一区二区| 国产精品久久久久9999高清| 日本va欧美va欧美va精品| 婷婷综合福利| 日韩毛片视频| 免费不卡在线视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲欧洲免费| 国产日产高清欧美一区二区三区| 日韩国产激情| 久久精品国产免费| 国内精品亚洲| 三级在线观看一区二区 | 欧美国产专区| 久久久久久色| 亚洲一级高清| 日本一区二区三区视频在线看| 日本免费在线视频不卡一不卡二| 一区二区91| 国产精品黄色| 蜜臀91精品国产高清在线观看| 在线观看亚洲精品福利片| 日韩精品欧美| 99视频精品全国免费| 国产日韩视频在线| 蜜桃成人av| 久久精品一区二区三区中文字幕| 日韩电影二区| 国产日韩亚洲欧美精品| 亚洲一区日韩| 蜜桃久久精品一区二区| 国产日韩免费| 视频一区中文字幕| 麻豆中文一区二区| 麻豆亚洲精品| 国产一区二区三区不卡av| 国产精品成人**免费视频| 欧美aa在线视频| 日韩一区精品字幕| 成人在线视频中文字幕| 国产一区视频在线观看免费| 亚洲国产影院| 五月激激激综合网色播| 亚洲精一区二区三区| 日韩一二三区在线观看| 精品视频在线你懂得| 午夜精品婷婷| 久久精品一本| 日本视频一区二区| 欧美亚洲国产一区| 精品久久中文| 日韩精品免费视频人成| 一二三区精品| 日韩午夜在线| 久久亚洲二区| 久久亚洲美女| 亚洲香蕉网站| 国产一区二区三区亚洲综合| 日韩美女国产精品| 日韩激情精品| 日韩在线成人| 国产精品午夜av| 免费久久99精品国产自在现线| 老司机精品视频在线播放| 婷婷综合五月| 免费毛片在线不卡| 中文字幕系列一区| 欧美天堂视频| 电影亚洲精品噜噜在线观看| 捆绑调教日本一区二区三区| 国产一区二区三区四区五区| 国产精品调教| 男女男精品视频网| 性一交一乱一区二区洋洋av| 在线亚洲一区| 国产精品呻吟| 亚洲乱亚洲高清| 日本不卡在线视频| 91p九色成人| 国产精品www994| 久久久久九九精品影院| 精品资源在线| 日韩精品dvd| 久久蜜桃av| 亚洲欧洲一区二区天堂久久| 99视频+国产日韩欧美| 六月丁香综合| 国产午夜久久| 日韩福利视频一区| 国产精品亲子伦av一区二区三区| 麻豆精品蜜桃视频网站| 成人在线黄色| 久久精选视频| 午夜在线播放视频欧美| 日韩动漫一区| 久久只有精品| 久久网站免费观看| 一区二区三区国产在线| 日本99精品| 国产精品麻豆久久| 激情自拍一区| a天堂资源在线| 久久精品99久久无色码中文字幕| 在线亚洲精品| 国产精品中文字幕亚洲欧美 | 亚洲www啪成人一区二区| 国产一区清纯| 婷婷亚洲成人| 精品国产网站| 尹人成人综合网| 91精品在线免费视频| 久久精品国产999大香线蕉| 成人免费电影网址| 久久亚洲一区| 久久中文字幕一区二区三区| 欧美不卡高清一区二区三区| 国精品一区二区| 91精品啪在线观看国产爱臀| 丰满少妇一区| 蜜桃av一区| 国产伦精品一区二区三区视频| 欧美三级精品| 日本亚洲不卡| 日本蜜桃在线观看视频| 国产精品毛片一区二区三区| 欧美一区成人| 久久久久久美女精品| 日韩精品一区二区三区中文字幕| 国产精品黑丝在线播放| 在线一区二区三区视频| 国产精品对白| 蜜桃视频欧美| 国产精品视频3p| 狠狠爱成人网| 国产精品巨作av| 不卡一区综合视频| 久久国产麻豆精品| japanese国产精品| 麻豆久久一区| 亚洲人亚洲人色久| 免费在线小视频| 青草综合视频| 尤物网精品视频| 久久伊人国产|