Django 序列化的方式主要有json.dumps和serializers,這兩者的使用區(qū)別是什么呢?
json.dumps
json.dumps只能序列化python內(nèi)置的一些類型(例如:字典,列表,元祖。。。),不能序列化django對(duì)象serializers用于序列化Django的Queryset [object,object,object]類型
使用舉例
from django.core import serializers
#serializers的使用
ret = models.BookType.objects.all()
data = serializers.serialize("json", ret) #"json"表示序列化目標(biāo)格式為json
#json.dumps的使用1
ret = {'status':True,'data':None}
user_list = UserInfo.objects.all().values('id','username') #<querytset [{key:value},{key:value}.......]>
ret['data'] = list(user_list) #list [{key:value},{key:value}.......]
result = json.dumps(ret)
#json.dumps的使用2
user_list = models.UserInfo.objects.all().values_list('id', 'username') #<querytset [(),(),(),()......]>
ret['data'] = list(user_list) #list [(),(),(),()......]
result = json.dumps(ret)