首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django 2.1.7 查询数据返回json格式

需求问题 在日常工作中,对于前端发送过来的请求,后端django大部分都是采用json格式返回,也有采用模板返回视图的方式。...在模板返回视图的方式的确很方便,但是如果涉及到动静分离、ajax请求这类,django就只能返回json格式的数据了。...那么这里就带来了一个问题,如何将django从数据库模型类中查询的数据以json格式放回前端。 然后前端如果获取读取返回过来的数据呢?...后台直接查询服务器信息,然后返回多条json数据 实现类视图代码如下: from django.core import serializers from django.http import HttpResponse...后端按照约束格式返回json数据 from django.core import serializers from django.http.response import JsonResponse from

3K20

Django 2.1.7 查询数据返回json格式

需求问题 在日常工作中,对于前端发送过来的请求,后端django大部分都是采用json格式返回,也有采用模板返回视图的方式。...在模板返回视图的方式的确很方便,但是如果涉及到动静分离、ajax请求这类,django就只能返回json格式的数据了。...那么这里就带来了一个问题,如何将django从数据库模型类中查询的数据以json格式放回前端。 然后前端如果获取读取返回过来的数据呢?...后台直接查询服务器信息,然后返回多条json数据 实现类视图代码如下: from django.core import serializers from django.http import HttpResponse...后端按照约束格式返回json数据 from django.core import serializers from django.http.response import JsonResponse from

2.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

django执行数据库查询之后实现返回的结果json

django执行sql语句后得到的返回结果是一个结果,直接把结果转json返回给前端会报错,需要先遍历转字典在转json,特别注意model_to_dict()只会将结果的第一条数据转字典,如果你是根据指定条件查一条数据返回的...,直接用model_to_dict()没问题,如果执行的是all()或filter()到多条或全部的数据,这个时候去model_to_dict()这个集合就不行了,那么先遍历这个集合在转字典,然后转json...model_to_dict(res) L.append(b) dic['code'] = '1' dic['message'] = '' dic['result'] = L return HttpResponse(json.dumps...(dic, ensure_ascii=False)) order_by(‘-id’):是将结果根据ID倒序排序 补充知识:django执行sql根据字段显示对应的数据方式 L = [] cursor.execute...(dic, ensure_ascii=False)) 以上这篇django执行数据库查询之后实现返回的结果json就是小编分享给大家的全部内容了,希望能给大家一个参考。

2.4K10

python测试开发django-118.json 解析查询数据库 datetime 格式问题

前言 django 查询的结果有日期时间格式的时候,返回的是datetime.datetime(2021, 9, 8, 0, 0)类型数据。...一般需要返回json格式数据,使用json.dumps()转的时候就会报错了 查询带时间的 Teacher模型有add_time日期时间类型DateTimeField # 作者-上海悠悠 QQ交流群:717225969...格式是由 JavaScript 对象为基础创建的轻量级数据格式,而 JS 没有 datetime 数据类型,所以在 Python 中使用 json.dumps 会报错。...但是django查询数据库默认返回的时间日期就是datetime.datetime()格式的,直接用json.dumps()转会报错TypeError: Object of type ‘datetime...", "is_delete": "0", "add_time": "2021-09-08 00:00:00"}] django里面关于日期处理,可以看之前写的 extra格式化日期时间https://www.cnblogs.com

45310

Django相关知识点回顾

json数据 # 演示响应时返回json数据 # /get_json/ # flask: jsonify # Django: JsonResponse() def get_json(request...all 无 查询模型类对应表格中的所有数据 QuerySet(查询) get 查询条件 查询满足条件一条且只能有一条数据 模型类对象,查不到会报错DoesNotExist filter 查询条件 返回满足条件的所有数据...QuerySet(查询) exclude 查询条件 返回不满足条件的所有数据 QuerySet(查询) order_by 排序字段 对查询结果进行排序 QuerySet(查询) aggregate...聚合 查询时进行聚合操作 字典:{'属性名_聚合类小写':值} count 无 返回查询结果的数目 数字 条件查询: 对应get,filter,exclude参数中可以写查询条件 格式:属性名__条件名...查询结果的缓存 使用同一个查询时,只有在第一次使用查询时会进行数据库的查询操作,然后Django框架就会把查询的结果存起来,下一次再使用这个查询时,使用的Django之前存储的结果。

10K51

django框架菜鸟教程_django框架菜鸟教程

中定义路由时,通常以斜线/结尾,其好处是用户访问不以斜线/结尾的相同路径时,Django会把用户重定向到斜线/结尾的路径上,而不会返回404不存在 。...4)请求体 请求体数据格式:表单类型字符串、JSON字符串、XML字符串 请求方式:POST/PUT/PATCH/DELETE 表单类型 通过request.POST属性获取,返回QueryDict对象...非表单类型 通过request.body属性获取最原始的请求体数据,自己按照请求体格式JSON、XML等)进行解析。request.body返回bytes类型。...():判断查询集中是否有数据,有返回Ture,无返回False 2、特性 惰性执行:创建查询的时候不会调用数据库,调用数据的时候访问,迭代、序列化、if合用 缓存 3、限制查询查询进行下标或切片操作...,切片后返回新的查询,不会立即执行 管理器Manageer 1、自定义管理器 修改原始查询,重写all()方法 booktest/models.py文件中 #图书管理器 class BookInfoManager

3K40

Django REST Framework

: 每一个返回代码都有具体特定含义 返回格式:推荐固定具体格式 DjangoRestFramework(DRF) https://q1mi.github.io/Django-REST-framework-documentation...配置urls 创建三个模型:Student,Teacher, ClassRoom 创建序列化器 创建视图聚合 序列化 序列化: 把系统运行中的一些实例等转换成一种可直接表示出来的格式,用来保存...Django基本一致 此视图基本是django视图的扩展 Request 把请求解析成一个request实例 属于DRF的,跟django的HttpRequest不太一样 在得到Request之前有一个...chrome - postman firefox - RESTClient - GenericAPIView - APIView的子类 - 支持的属性 - queryset:查询结果...- lookup_field:查询条件字段,默认为pk - get_queryset: 返回查询结果集合,经常需要重写 - get_serializer_class:

2.1K63

安装 Django REST Framework

它们负责将Django模型转换为JSON、XML或其他格式的数据,并反之亦然。...下面是一个简单的序列化器示例,用于将Django的User模型序列化为JSON格式:from rest_framework import serializersfrom django.contrib.auth.models...下面是一个简单的视图示例,用于返回所有用户的列表:from rest_framework import genericsfrom django.contrib.auth.models import Userfrom...我们指定了我们想要返回的所有用户的查询,并指定了用于序列化数据的序列化器。创建路由路由是将URL映射到视图的一种机制。在DRF中,我们可以使用Django的URLConf和DRF的路由器来定义路由。...现在,您可以在浏览器中访问http://localhost:8000/users/,应该能够看到所有用户的JSON格式数据。上面的示例只是DRF的入门示例。

1.4K20

Django Response对象3.4

HttpResponse对象 write(content):文件的方式写 flush():文件的方式输出缓存区 set_cookie(key, value='', max_age=None, expires...json数据,一般用于异步请求 _init _(data) 帮助用户创建JSON编码的响应 参数data是字典对象 JsonResponse的默认Content-Type为application/json...:该request用于生成response template_name:要使用的模板的完整名称 context:添加到模板上下文的一个字典,视图将在渲染模板之前调用它 from django.shortcuts..._404(klass, args, *kwargs) 通过模型管理器或查询调用get()方法,如果没找到对象,不引发模型的DoesNotExist异常,而是引发Http404异常 klass:获取对象的模型类...、Manager对象或QuerySet对象 **kwargs:查询的参数,格式应该可以被get()和filter()接受 如果找到多个对象将引发MultipleObjectsReturned异常 from

85120

重点内容回顾-DRF

; d.响应数据返回&响应状态码;(200获取或修改成功/201新增成功/204删除成功/404资源不存在/400客户端请求有误/500服务器错误) e.响应数据格式JSON。...Response类的对象:传入原始的响应数据,会自动根据客户的请求头中 Accept将响应数据转换为对应的格式进行返回,默认是json,仅支持json和html 3.异常处理:如果视图中抛出了未处理异常...数据库查询 属性: queryset(指定视图所使用的查询) 方法: get_queryset返回视图所使用的查询 get_object从视图所使用的查询集中查询指定的对象,默认根据pk进行查询。...使用场景: 根据不同的操作返回不同的序列化器类和不同的查询,重写 get_serializer_class和 get_queryset方法。...返回latest操作使用的查询 else: # 返回其他操作所使用的查询 5.6.6路由Router 作用 配合视图集进行使用,动态生成视图集中处理函数的url配置项。

2.4K20

Django项目知识点(四)

Manager定义表级方法(表级方法就是影响一条或多条记录的方法),我们可以models.Manager为父类,定义自己的manager,增加表级方法; QuerySet:Manager类的一些方法会返回...exclude() 排除满足条件的对象 annotate() 使用聚合函数 order_by() 对查询进行排序 reverse() 反向排序 distinct() 对查询去重...dates() 根据日期获取查询 datetimes() 根据时间获取查询 none() 创建空的查询 all() 获取所有的对象 union() 并 intersection...() 交集 difference() 差 select_related() 附带查询关联对象 prefetch_related() 预先查询 extra() 附加SQL查询...的aggregate和annotate方法属于高级查询方法,主要用于组合查询,是Django高手们必需要熟练掌握的。

1.5K30

django 1.8 官方文档翻译:7-2 管理操作

需要接收三个参数: 当前的 ModelAdmin 表示当前请求的HttpRequest 含有用户所选的对象集合的QuerySet 我们用于发布这些文章的函数并不需要ModelAdmin或者请求对象,但是我们会用到查询...: def make_published(modeladmin, request, queryset): queryset.update(status='p') 注意 为了性能最优,我们使用查询的...其它类型的操作可能需要分别处理每个对象;这种情况下我们需要对查询进行遍历: for obj in queryset: do_something_with(obj) 编写操作的全部内容实际上就这么多了...例如,你可能编写了一个简单的导出函数,它使用了Django的序列化函数来将一些选中的对象转换为JSON: from django.http import HttpResponse from django.core...大多数情况下,最佳实践是返回 HttpResponseRedirect,并且使用户重定向到你编写的视图中,向GET查询字符串传递选中对象的列表。这需要你在中间界面上提供复杂的交互逻辑。

69420

Django REST Framework-常用的类视图

APIViewAPIView是Django REST Framework中最基本的类视图之一。它提供了一个通用的方式来处理HTTP请求,并返回一个HTTP响应。...当GET请求发送到视图时,它将返回一个JSON响应,其中包含“message”键和“Hello,World!”值。...在视图中,我们指定了要使用的查询和序列化器,并使用list,create和destroy方法处理GET,POST和DELETE请求。...我们指定了要使用的查询和序列化器,并使用ModelViewSet提供的默认实现处理常见API操作。...我们指定了要使用的查询和序列化器,并使用ReadOnlyModelViewSet提供的默认实现处理GET请求。ViewSetViewSet是一种通用的类视图,它提供了处理HTTP请求的通用方式。

66030

在 PostgreSQL 中解码 Django Session

一般而言,发起请求的客户端会 cookie 的形式将 session_key 附带其中。当 web 服务器收到请求时,若存在 session_key,将发起查询来检验 key 是否已知。...构建请求 初瞥一眼 你可能在第一张图片中观察到,session_data 看起来不像是 JSON JSON 存储的原数据被隐藏在了 base64 之后。...这是可复制格式的完整查询语句: with step1 as ( select session_key, encode(decode(session_data, 'base64'),...当你创建实例化视图时(以及当你刷新它时),视图对应的源代码将会被执行生成结果用于填充视图。确保你在需要最新的数据的时候刷新一下视图!...Postgres 构建出一个可以快速提取你要的 数据并让你可以和其他表直接连表查询视图,不得不说是十分愉悦的。

3.2K20
领券