以下内容基于路由分发的基础上进行配置
相应相关的方法
- 回复字符串使用 ——> HttpResponse
- 回复一个html页面的时候使用 ——> render
- 重定向页面 ——> redirect
最终的回复页面的底层都是用的HttpResponse方法,让用户看到网页。
1. 配置一个html首页
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>首页</title>
</head>
<body>
<h1> 欢迎来到网站首页!</h1>
{#<a href="/test01/index/"> test01 首页 </a>#}
{#<a href="/test02/index/"> test02 首页 </a>#}
<form action="/test01/login/" method="post" > {# 将表单的数据提交到/test01/login/ #}
user: <input type="text" name="username">
passwd: <input type="text" name="passwd">
<button>提交</button>
</form>
</body>
</html>
2. 配置url
from test01 import views
urlpatterns = [
path('index/',views.index),
path('base/', views.base), # --> 登录成功后显示的页面
path('login/', views.login), # --> 登录的时候显示的页面
]
3. 视图逻辑配置
# redirect 重定向页面
from django.shortcuts import redirect
def base(request):
return HttpResponse('<h1>test01 index!</h1>')
def login(request):
method = request.method # 获取用户请求方式
if method == 'GET':
return render(request,'index.html') # 返回登录的页面
else:
username = request.POST.get('username')
password = request.POST.get('passwd')
if username == 'guo' and password == 'guo':
return redirect('/test01/base/') # 登录成功重定向页面
else:
return HttpResponse('登录失败') # 失败直接返回登录失败
4. 验证
首先使用的是login 最终重定向到了 base 页面。