Django框架封裝外部函數(shù)示例
本文實(shí)例講述了Django框架封裝外部函數(shù)。分享給大家供大家參考,具體如下:
需求:我們來模擬用戶登錄,驗(yàn)證是否輸入正確的用戶名和密碼
1.構(gòu)建登錄表單
<form method="post"> <p>用戶名:<input type="text" name="username"></p> <p>密碼:<input type="password" name="pwd"></p> <p><input type="submit" value="提交"></p> <hr> </form> <p> 登錄狀態(tài)提示:{{ result }} </p>
2.程序判斷
#coding:utf-8 from django.shortcuts import render,render_to_response # Create your views here. from django.http import HttpResponse def hi(request): msg = {'result':''} if userLogin(request.POST.get('username'),request.POST.get('pwd')): msg['result'] = '登錄成功' else: msg['result'] = '登錄失敗' return render_to_response("index.html",msg) #判斷用戶登錄函數(shù) def userLogin(username,pwd): if username == 'jack' and pwd == '123': return True else: return False
驗(yàn)證如果輸入的用戶名為jack,密碼為123,就提示“登錄成功”
3.一個(gè)小意外
如果你提交上面的表單,會(huì)報(bào)如下錯(cuò)誤,這個(gè)是Django框架的驗(yàn)證機(jī)制
這是為了防止跨域攻擊,我們這里暫時(shí)不研究這個(gè)安全機(jī)制,來到settings.py文件注釋掉下面這行
這樣就不會(huì)報(bào)上面的那個(gè)錯(cuò)誤了。
如果用戶輸正確的用戶名和密碼(jack、123),模板上{{ result }} 就是提示“登錄成功”。
4.如何把userLogin函數(shù)寫到外部?
在views.py文件同級(jí)下新建user.py文件
然后在views.py里
先引入
import user
使用
user.userLogin()
完整的views.py代碼如下:
#coding:utf-8 from django.shortcuts import render,render_to_response # Create your views here. from django.http import HttpResponse import user def hi(request): msg = {'result':''} if user.userLogin(request.POST.get('username'),request.POST.get('pwd')): msg['result'] = '登錄成功' else: msg['result'] = '登錄失敗' return render_to_response("index.html",msg)
希望本文所述對(duì)大家基于Django框架的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python編程實(shí)現(xiàn)tail-n查看日志文件的方法
這篇文章主要介紹了Python編程實(shí)現(xiàn)tail-n查看日志文件的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07基于Python實(shí)現(xiàn)迪杰斯特拉和弗洛伊德算法
這篇文章主要為大家詳細(xì)介紹了基于Python實(shí)現(xiàn)迪杰斯特拉和弗洛伊德算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01python pygame實(shí)現(xiàn)五子棋小游戲
這篇文章主要為大家詳細(xì)介紹了python pygame實(shí)現(xiàn)五子棋小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
這篇文章主要介紹了OpenCV2.3.1+Python2.7.3+Numpy等的配置解析,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01