一、
文件–mysite–mystie–urls.py
from django.shortcuts import HttpResponse,render
def login(request):
'''
处理用户请求,并返回内容
:param request: 用户请求相关所有信息(对象)
:return:
'''
#HttpResponse只回复字符串
#return HttpResponse('login.html')
#自动找到模板路径下的login.html文件,读取内容并返回用户
#模板路径的配置,
return render(request,'login.html')
urlpatterns = [
#path('admin/', admin.site.urls),
path('login/',login),
]
文件–mysite–templates–login.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>login</title>
<link rel="stylesheet" href="/static/commons.css"/> {# 导入css样式文件#}
</head>
<body>
{# <h1 style="color: blue">用户登陆</h1>#}
<h1 >用户登陆</h1>
<form method="post" action="/login/">
<input type="text" name="username"/>
<input type="password" name="password"/>
<input type="submit" value="登陆">
</form>
</body>
</html>
文件–mysite–static–commons.css
h1{
color: red;
}
启动网址页面
http://127.0.0.1:8000/login/
首次打开
http://127.0.0.1:8000/login/页面,会发送GET请求,后台函数返回login.html的页面
二、简单实现简单页面登陆的功能
修改–urls.py
from django.shortcuts import HttpResponse,render,redirect
def login(request):
'''
处理用户请求,并返回内容
:param request: 用户请求相关所有信息(对象)
:return:
'''
#HttpResponse只回复字符串
#return HttpResponse('login.html')
#自动找到模板路径下的login.html文件,读取内容并返回用户
#模板路径的配置,
#return render(request,'login.html')
if request.method == 'GET':
return render(request,'login.html')
else:
#用户post提交的数据 请求提里面的东西
print(request.POST)
u=request.POST.get('username')
p = request.POST.get('password')
if u=='root' and p=='123123':
#登陆成功,跳转,redirect重定向
return redirect('http://baidu.com')
else:
#登陆失败
return render(request, 'login.html',{'msg':'用户名或密码错误'}) #模板引擎内部在帮我们渲染的时候,自动帮我们把‘用户名或密码错误’,这个东西自动替换到html页面{{msg}}特殊字符上
login.htm在登录按钮下l增加 {{msg}} ,
return render(request, ‘login.html’,{‘msg’:‘用户名或密码错误’})
#模板引擎内部在帮我们渲染的时候,自动帮我们把‘用户名或密码错误’,这个东西自动替换到html页面{{msg}}特殊字符上
登录失败跳转原页面,并提示用户名或密码错误。
登录成功直接跳转你想跳转的页面,如http://baidu.com