• ModelSerializer和Serializer的区别


      时常,你需要对django model 的实例进行序列化。ModelSerializer 类提供了一个捷径让你可以根据 Model 来创建 Serializer。

    ModelSerializer 类和 Serializer 类一样,不过添加了以下功能:

    • 它会基于 model 自动创建一些字段
    • 它会自动生成一些验证,比如 unique_together 验证。
    • 它包含简单的默认的 create() 和 update()

    声明一个 ModelSerializer 看起来是这样:

    class  AccountSerializer(serializers.ModelSerializer):
         class  Meta:
             model  =  Account
             fields  =  ( 'id' ,  'account_name' ,  'users' ,  'created' )
    class  AccountSerializer(serializers.ModelSerializer):<br>    name_1  =  SerializerMethodField()<br>    name_2  =  CharField(source = "account_name" )     # source 可接字段或方法
         class  Meta:
             model  =  Account
             fields  =  ( 'id' ,  'account_name' ,  'users' ,  'created' , 'name' )
             # fields = "__all__"
             # exclude = ("users",)<br>        # read_only_fields = ('account_name',)<br>        # extra_kwargs = {'account_name': {'read_only': True}}<br>    def get_name_1(self,obj):<br>        return obj.name
  • 相关阅读:
    fastjson反序列化漏洞研究(上)
    csv注入复现代码
    day24-python之面向对象
    day23-python之日志 re模块
    day22-python之模块
    day21-python模块
    day20-python之装饰器
    day18-python之迭代器和生成器
    day17-python之文件操作
    day16-python之函数式编程匿名函数
  • 原文地址:https://www.cnblogs.com/ZH-YC/p/14457112.html
Copyright © 2020-2023  润新知