应用名/views.py(视图,视图函数,HttpRequest对象):
from django.shortcuts import render,redirect # 视图函数,登陆检验 (第一个参数必须是HttpRequest对象) def login_check(request): # request.POST 保存的是post方式提交的参数 QueryDict类型 # request.GET 保存是get方式提交的参数 QueryDict类型 print(request.method) # POST GET 请求方式 # print(request.path) # /login_check 请求路径(不包含域名和参数) # 获取提交的用户名和密码 username = request.POST.get('username') # 获取请求参数 password = request.POST.get('password') if username == '张三' and password == '123': # 用户名密码正确,跳转到首页 return redirect('/index') else: # 用户名或密码错误,跳转到登录页 return redirect('/login')
demo.py(QueryDict类型示例):
from django.http.request import QueryDict # 创建QueryDict对象,并存放3个键值对。 q = QueryDict('a=1&b=2&c=3') # QueryDict类似字典 print(q['a']) # 获取QueryDict中的值。没有对应的值会报错。 print(q.get('b')) # 也可以通过get()获取。没有对应的值会返回None,不会报错。 print(q.get('e','默认值')) # 有对应的值就返回,没有就返回'默认值' q1 = QueryDict('a=1&a=2&a=3') # QueryDict中的相同键可以对应多个值。(而字典的键只能对应一个值) q1.get('a') # 3 默认取得是最后的值。 q1.getlist('a') # [1, 2, 3] 可以取出键对应的所有值。
HttpRequest对象的属性: