美文网首页
对一个序列化的深度控制

对一个序列化的深度控制

作者: dream_seeker | 来源:发表于2019-03-05 20:27 被阅读0次

#序列化

import json

#序列化类
class RolesSerializer(serializers.Serializer):
    # 必须给数据库的字段一致(序列化组件)
    title = serializers.CharField()
    
    ##title = serializers.CharField(source="get_user_type_display") <<<<<<<++ source:这个方法会获取这个字段对应的内容
    #一对多 title = serializers.CharField(source="group.id") <<<< 可以用点关系取出关联的数据
    #
    


对一个序列化的深度控制
class UserInfo(serializers.Serializer):
    title = serializers.CharField(source="get_user_type_display") <<<<<<<++ source:这个方法会获取这个字段对应的内容
    class Meta:
        model = models.UserTofo #对哪个模板类进行序列化
        fields = "__all__" #对模块的所有字段进行操作
        depth = 1 #深度控制,数字表示进入的层次
#视图类,接收请求,返回响应
class RolesView(APIView):
    def get(self, request, *args, **kwargs):
        
        roles = models.Role.objects.all()   #从数据库中获取数据
        
        ser = RolesSerializer(instance=roles, many=True)   #序列化 instance=roles#要序列化的模型类

        return HttpResponse(json.dumps(ser.data))

相关文章

  • 对一个序列化的深度控制

    #序列化

  • Android 不得不知 之 Serializable

    概念 序列化就是将对象转化为字节流。 反序列化就是将字节流转化为对象。 默认的序列化是深度系列化(即类中嵌套其他对...

  • Apache Commons Lang3之Serializati

    概述 SerializationUtils是Java序列化工具类,主要有以下几个功能:使用序列化进行深度克隆序列化...

  • C#深度拷贝,浅拷贝

    使用序列化的方法实现深度拷贝非常方便

  • Python实用技法第6篇:让字典保持有序

    1、需求? 我们想创建一个字典,同时当对字典做迭代或序列化操作时,也能控制其中元素的顺序。 2、解决方案? 要控制...

  • 序列化

    Java 序列化序列化作用注意事项Java 序列化的缺点举例说明项目中曾遇到的一个小问题参考 序列化定义:将一个对...

  • Gson之@Expose

    Gson注解之 @Expose 的作用: 控制某个属性是否参与 JSON的序列化 or 反序列化。 代码使用示例:...

  • C#序列化

    序列化操作 序列化对象声明 对类使用序列化时,标注那些不需要序列化的字段。 序列化只能针对字段使用。 使用序列化相...

  • AFNetworking - AFURLResponseSeri

    AFURLResponseSerialization 的作用是对请求返回的数据进行序列化 它有一个序列化的基类AF...

  • XML的序列化和反序列化

    XML的序列化和反序列化 System.Xml.Serialization命名空间中有一系列的特性类,用来控制复杂...

网友评论

      本文标题:对一个序列化的深度控制

      本文链接:https://www.haomeiwen.com/subject/sacauqtx.html