通过Serializer的用法,会发现我们所有的序列化跟我们的模型都紧密相关
DRF也给我们提供了跟模型紧密相关的序列化器~~ModelSerializer
-- 它会根据模型自动生成一组字段
-- 它简单的默认实现了.update()以及.create()方法
定义一个ModelSerializer序列化器
fields = ["id", "title", "pub_time"] #包含某些字段
exclude = ["user"] #排除的字段
外键关系的序列化
注意:当序列化类MATE中定义了depth就是定义了外键关系的序列化,
这个序列化类中引用字段(外键)则自动变为只读
自定义字段
我们可以声明一些字段来覆盖默认字段,来进行自定制~
这里覆盖category字段
SerializerMethodField
外键关联的对象有很多字段我们是用不到的~都传给前端会有数据冗余~就需要我们自己去定制序列化外键对象的哪些字段~~
用ModelSerializer改进上面Serializer的完整版