本文实例讲述了Django框架封装外部函数。分享给大家供大家参考,具体如下:
需求:我们来模拟用户登录,验证是否输入正确的用户名和密码
1.构建登录表单
1
2
3
4
5
6
7
8
9
|
< 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 >
登录状态提示:{{ result }}
</ p >
|
2.程序判断
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#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)
#判断用户登录函数
def userLogin(username,pwd):
if username = = 'jack' and pwd = = '123' :
return True
else :
return False
|
验证如果输入的用户名为jack,密码为123,就提示“登录成功”
3.一个小意外
如果你提交上面的表单,会报如下错误,这个是Django框架的验证机制
这是为了防止跨域攻击,我们这里暂时不研究这个安全机制,来到settings.py文件注释掉下面这行
这样就不会报上面的那个错误了。
如果用户输正确的用户名和密码(jack、123),模板上{{ result }} 就是提示“登录成功”。
4.如何把userLogin函数写到外部?
在views.py文件同级下新建user.py文件
然后在views.py里
先引入
1
|
import user
|
使用
1
|
user.userLogin()
|
完整的views.py代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
|
#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)
|
希望本文所述对大家基于Django框架的Python程序设计有所帮助。
原文链接:https://blog.csdn.net/github_26672553/article/details/52493519