django请求与响应(HttpRequest对象和HttpResponse对象)
发布日期:2021-07-01 02:13:08 浏览次数:2 分类:技术文章

本文共 1182 字,大约阅读时间需要 3 分钟。

HttpRequest对象

服务器接收到http协议的请求后,会根据报文创建HttpRequest对象视图函数的第一个参数是HttpRequest对象在django.http模块中定义了HttpRequest对象的API

这些是默认,必有的属性

在这里插入图片描述

在这里插入图片描述

form标签中的GET和POST:

前端中最重要的from

在HTML中,form表单的作用是收集标签中的内容,… 中间可以由访问者添加类似于文本,选择,或者一些控制模块等等.然后这些内容将会被送到服务端。

一个表单必须指定两样东西:

  1. form的method参数用于设置表单的提交方式,默认使用POST.
  2. action用于设置表单的提交url,如果不写或者保持空字符串,那么将使用当前的URL.

在这里插入图片描述

一键多值的getlist方法:

request对象的属性GET、POST都是QueryDict类型的对象

与python字典不同,QueryDict类型的对象用来处理同一个键带有多个值的情况

  • 方法get():
    根据键获取值,只能获取键的一个值
    如果一个键同时拥有多个值,获取最后一值
  • 方法getlist():
    根据键获取值将键的值以列表返回
    可以获取一个键的多个值

request中GET和POST对象的属性:

GET属性

  • QueryDict类型的对象
  • 包含get请求方式的所有参数
  • 与url请求地址中的参数对应,位于?后面
  • 参数的格式是键值对,如key1=value1
  • 多个参数之间,使用&连接,如key1=value1&key2=value2

POST属性

  • QueryDict类型的对象
  • 包含post请求方式的所有参数
  • 与form表单中的控件对应
  • 表单中控件要有name属性,则name属性的值为键,value属性的值为值,构成键值对提交
  • 对于checkbox控件,name属性一样为一组,当控件被选中后会被提交,存在一键多值的情况.

HttpResponse对象:

在这里插入图片描述

HttpResponse的子类:

返回数据的响应函数有:

HttpResponse() 返回简单的字符串对象
render() 渲染模板
redirect() 重定向
JsonResponse() 返回json数据

在这里插入图片描述

使用debug看下JsonResponse
在这里插入图片描述

def students_api(request):    sex = request.GET.get('sex')    sex = int(sex)    students = Student.objects.values('name', 'age', 'sex', 'phone').filter(sex=sex)    students = list(students)    res = {'data': students}    return JsonResponse(res)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

转载地址:https://maoli.blog.csdn.net/article/details/89436044 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:django Admin
下一篇:django简单实现文件上传

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月09日 09时37分17秒