home/views.py
"""查询字符串[Query String]""" def index3(request): # print(request.GET) """ 访问地址: http://127.0.0.1:8000/home/index3 打印效果: <QueryDict: {}> 分析: 通过request得到的客户端请求数据,基本都是会保存成QueryDict类字典给视图的,上面是空字典 QueryDict的声明位置: from django.http import QueryDict QueryDict的父类继承的就是dict字典,所以字典提供的方法或者操作, QueryDict都有 """ """ 访问地址: http://127.0.0.1:8000/home/index3?name=xiapming&mobile=13312345678 打印效果: <QueryDict: {'name': ['xiapming'], 'mobile': ['13312345678']}> 分析: 这次就获取到了name和mobile参数以及参数的值 注意: 因为客户端传递过来的参数有可能多个值的情况,所以查询字符串返回的数据值都是列表格式 """ """ 访问地址: http://127.0.0.1:8000/home/index3?name=xiapming&mobile=13312345678&lve=swimming&lve=shopping&lve=game 打印效果: <QueryDict: {'name': ['xiapming'], 'mobile': ['13312345678'], 'lve': ['swimming', 'shopping', 'game']}> 分析: 因为lve有多个值的存在, 所以值就是列表中有3个成员 """ """获取QueryDict对象中的参数值""" # 获取参数的一个值,或者第一个值 # 因为QueryDict是一个伪字典对象,所以可以通过get或者中括号获取到数据 # print(request.GET.get("name")) # print(request.GET["name"]) # 获取参数的所有值 print(request.GET.getlist("lve")) # ['swimming', 'shopping', 'game'] print(request.GET['lve']) # game,后面的值覆盖了前面的值 return HttpResponse("ok")