以下内容基于路由分发的基础上进行配置

相应相关的方法

  • 回复字符串使用 ——> HttpResponse
  • 回复一个html页面的时候使用 ——> render
  • 重定向页面 ——> redirect

    最终的回复页面的底层都是用的HttpResponse方法,让用户看到网页。

1. 配置一个html首页

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>首页</title>
  6. </head>
  7. <body>
  8. <h1> 欢迎来到网站首页!</h1>
  9. {#<a href="/test01/index/"> test01 首页 </a>#}
  10. {#<a href="/test02/index/"> test02 首页 </a>#}
  11. <form action="/test01/login/" method="post" > {# 将表单的数据提交到/test01/login/ #}
  12. user: <input type="text" name="username">
  13. passwd: <input type="text" name="passwd">
  14. <button>提交</button>
  15. </form>
  16. </body>
  17. </html>

2. 配置url

  1. from test01 import views
  2. urlpatterns = [
  3. path('index/',views.index),
  4. path('base/', views.base), # --> 登录成功后显示的页面
  5. path('login/', views.login), # --> 登录的时候显示的页面
  6. ]

3. 视图逻辑配置

  1. # redirect 重定向页面
  2. from django.shortcuts import redirect
  3. def base(request):
  4. return HttpResponse('<h1>test01 index!</h1>')
  5. def login(request):
  6. method = request.method # 获取用户请求方式
  7. if method == 'GET':
  8. return render(request,'index.html') # 返回登录的页面
  9. else:
  10. username = request.POST.get('username')
  11. password = request.POST.get('passwd')
  12. if username == 'guo' and password == 'guo':
  13. return redirect('/test01/base/') # 登录成功重定向页面
  14. else:
  15. return HttpResponse('登录失败') # 失败直接返回登录失败

4. 验证

首先使用的是login 最终重定向到了 base 页面。
image.png