python之路(22)django下ajax取数据序列化

 前言

  将对象转换成字符串叫做序列化,将字符串转换成对象叫做反序列化

  django中使用ajax来取数据,通过views从数据库拿到数据,将数据渲染成html页面,通过浏览器显示,但views返回的的必须是一个字符串,因此序列化就很有必要

  从数据可中拿到的list数据有三种形式:

1.all()           

  返回的是一个QeruySet对象,里面包含一个一个的对象【obj,obj,obj】   

#通过serializers模块来是QuerySet对象转换成json格式
#前端需要通过JSON.parse(arg)来解析数据,转换回对象

from django.core import serializers

    ret = serializers.serialize('json',ret)

2.values()  

       返回的是一个QuerySet对象,里面是一个一个的字典【{},{},{}】   

#通过将QuerySet类型,转换成list类型

import json
    ret = list(ret)
    ret = json.dumps(ret)

3.values_list()  

 返回的是一个QuerySet对象,里面是一个一个的元组【(),(),()】   

#通过将QuerySet类型,转换成list类型

import json
    ret = list(ret)
    ret = json.dumps(ret)

 

 

posted @ 2019-07-18 17:19  树之下  阅读(355)  评论(0编辑  收藏  举报