django之序列化

Posted 2mei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django之序列化相关的知识,希望对你有一定的参考价值。

简介:

  前端,比如VUE,他不认识后端的QUERY SET对象,后端只能转换成字符串才能认识,

  这就需要序列化

Django内置的serializers
def books_json(request):
    book_list = models.Book.objects.all()[0:10]
    from django.core import serializers
    ret = serializers.serialize("json", book_list)
    return HttpResponse(ret)

 说明:

  这里只是提供一个内置的简单序列化工具,

  后面会增加一个功能强大的序列化工具。

 1,导入工具

from django.core import serializers
2,序列化成json格式的字符串,此字符串变量名是book_list
ret = serializers.serialize("json", book_list)

以下是手工生成列表,并序列化成字符串

如果是手工传递数据到django服务器,则需要如下步骤,就显得太繁琐了
from app01.models import Person
def persons(request):
    #获取查询集(query set)
    ret=Person.objects.all()
    person_list=[]
    #手工按照我们自定义的格式,生成列表
    for value in ret:
        person_list.append({‘name‘:value.name,‘age‘:value.age})
    print(person_list)
    # 使用json将列表序列化成字符串
    import json
    s=json.dumps(person_list)
    return HttpResponse(s)

 查看生成的字符串s

技术分享图片

使用json解析器,解析下,查看内容。

技术分享图片

 

 

 











以上是关于django之序列化的主要内容,如果未能解决你的问题,请参考以下文章

Django rest_framewok框架的基本组件

067.Python框架Django之DRF视图类

如何在 Django Summernote 中显示编程片段的代码块?

django之序列化

Django之序列化

Django之序列化