时间:2021-05-22
序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据
方法一:通过继承View类,重写get方法,获取商品的前是前十条数据,通过serialize序列化数据,返回数据响应。
from django.views.generic import Viewfrom goods.models import Goodsfrom django.core import serializersfrom django.http import HttpResponse class GoodsListView(View): def get(self,request): """ 通过django的view实现商品列表页 :param request: :return: """ #返回前所有商品的前10条数据 goods_list = Goods.objects.all()[:10] #直接转换成json类型的字符串 data = serializers.serialize("json",goods_list) #注意要加上:"application/json",否则在浏览器显示不正常 return HttpResponse(data,"application/json")方法二:通过继承View类,重写get方法,获取指定获取某些字段商品的前十条数据,通过serialize序列化数据,返回数据响应。
from django.views.generic import Viewfrom goods.models import Goodsfrom django.http import HttpResponseimport jsonclass GoodsListView(View): #重写get方法 #django返回第一种方式 def get(self,request): # 得到商品前10条数据 goods=Goods.objects.all()[:10] goods_list=[] for good in goods: item={} item['name']=good.name item['click_num']=good.click_num item['shop_price']=good.shop_price goods_list.append(item) response_data=json.dumps(goods_list,ensure_ascii=False) #python字符串 设置为utf-8编码 return HttpResponse(response_data,'application/json')方法三:使用Jsonresponse,通过继承View类,重写get方法,获取商品的前是前十条数据,通过serialize序列化数据,返回数据响应,工作中我们常用第三种方法返回JSON数据。
from django.views.generic import Viewfrom goods.models import Goodsfrom django.core import serializersimport jsonfrom django.http import JsonResponseclass GoodsListView(View): def get(self,request): """ 通过django的view实现商品列表页 :param request: :return: """ #返回前所有商品的前10条数据 goods_list = Goods.objects.all()[:10] #序列化,把内存中的python对象,转换成网络中能够传输的对象 #直接转换成json类型的字符串 data = serializers.serialize("json",goods_list) #转换成字典 data = json.loads(data) return JsonResponse(data,safe=False)以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在使用djangorestframeworkserializer序列化在django中定义的model时,有时候我们需要额外在serializer中增加一些mo
详解Python序列化Serialize和反序列化Deserialize序列化(serialization)序列化是将对象状态转换为可保持或传输的格式的过程。与
django-rest-framework类视图拓展自django的类视图,只是针对数据的序列化和反序列化等逻辑做了封装。django-rest-framewo
序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。几种序列化技术:1)
Java序列化和反序列化实例详解在分布式应用中,对象只有经过序列化才能在各个分布式组件之间传输,这就涉及到两个方面的技术-发送者将对象序列化,接受者将对象反序列