什么是django rest framwork的'serializer'和'serializer fields'之间的差异

时间:2017-06-27 04:55:27

标签: python django serialization django-rest-framework serializer

django rest框架的序列化程序将模型数据转换为JSON格式并验证传入数据  检查功能。序列化程序字段的功能是转换值和数据类型以及验证输入值。我觉得它看起来一样,但我想知道它的区别是什么。

1 个答案:

答案 0 :(得分:1)

如果你看一下源代码中Serializer类的定义,你会发现它是Field的后代。

class BaseSerializer(Field):

class Serializer(BaseSerializer):

https://github.com/encode/django-rest-framework/blob/master/rest_framework/serializers.py

除了代码Serializer中的实现之外,还有复杂的字段,其中可以包含子字段。所有其他字段用于序列化/验证基本数据(数字,蜇,数字/字符串列表等),而Serializer用于序列化/验证由其他字段组成的对象。