django自带serializers序列化返回指定字段

django orm 有个defer方法,指定模型排除的字段。

如下返回的Queryset, 排除‘username’, 'id'。

users=models.UserInfo.objects.defer('username','id')
或users=models.UserInfo.objects.filter(...).defer('username','id')

再如下,使用django自带serializers进行序列,发现序列化的数据仍存在‘username’, 'id'这两个字段。

data = serializers.serialize('json', users)

如何解决?

在使用django自带serializers时,添加fields选项,将不需要的字段放入即可:

from django.core import serializers
users=models.UserInfo.objects.all()

data = serializers.serialize('json', users, fields=('username', 'id'))

 

你可能感兴趣的:(python,django,serializer)