一、模型序列化器和普通序列化器对比
没有使用ModelSerializer序列化器时,我们自定义的序列化器类需要添加对应模型类中的很多字段,但是如果添加的字段有成百个,是否也需要一个一个手动添加呢?所以有一种更为简洁的模型序列化器类来帮我们优化框架代码,简化序列化器类中字段的创建
普通序列化器类示例:
class ProjectsSerializer(serializers.Serializer):
name = serializers.CharField(max_length=50, label='项目名称', help_text='项目名称帮助文档',validators=[ validators.UniqueValidator(queryset=Project.objects.all(), message="项目名称已存在")])
leader = serializers.CharField(max_length=200, label='项目负责人', help_text='项目负责人帮助文档')
tester = serializers.CharField(max_length=200, label='测试人员', help_text='测试人员帮助文档',
error_messages={
"required": "tester该字段必传", "max_length": "长度不能操作5个字节"})
使用模型序列化器类(ModelSerializer)如下: