Django框架之 序列化组件

一、序列化组件

如果我的前端想拿到由ORM得到的数据库里面的一个个用户对象,我的后端想直接将实例化出来的数据对象直接发送给客户端,并且前端能识别。这时候可以自己写一个方法,把每个对象封装成字典的格式,然后将所有的字典放到列表中返回出去。也可以使用相应的模块。毕竟django号称掉包侠。

1.1 自己实现

'''序列化组件'''
def my_serializers(request):
    user_queryset = models.UserInfo.objects.all()
    '''自己实现orm对象序列化'''
    user_list = []
    for user_obj in user_queryset:
        user_list.append({
            "user": user_obj.user,
            "pwd": user_obj.password,
            'gender': user_obj.get_gender_display(),
        })
    user_json = json.dumps(user_list)
    return render(request,"my_serializers.html",locals())

1.2 Django内置的serializers

'''序列化组件'''
from django.core import serializers
def my_serializers(request):
    user_queryset = models.UserInfo.objects.all()
    '''使用Django内置的serializers'''
    user_json = serializers.serialize('json', user_queryset)
    return render(request,"my_serializers.html",locals())

猜你喜欢

转载自www.cnblogs.com/XuChengNotes/p/11761697.html