ModelSerializer

1、基于model自动生成字段
2、自动生成校验
3、create update简单的默认实现

外键默认映射为PrimaryKeyRelatedField,逆向的关系默认没有

使用fields和exclude来指定包含哪些字段

默认的外键只显示主键,你也可用depth选项方便构造嵌套表示

也可直接添加或者重载字段,就像构造基础的serializer一样,使用source指定对应的值或函数

使用read_only_fields来指定只读的字段
对于model中的字段,如果设置了editable=False或是AutoField,不需要再次指定

特例:
user = serializers.PrimaryKeyRelatedField(read_only=True, default=serializers.CurrentUserDefault())‘
这里的user是只读的绑定到当前用户,但是和其他字段组成了一个unique_together 的校验,这里要给出default值,详情查看validator文档

额外参数

    extra_kwargs = {'password': {'write_only': True}}

关系字段,查看serializer relations文档

自定义字段映射

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容