关于Django中的Serializer和ModelSerializer选择使用

探讨在Django REST框架中,ModelSerializer与Serializer的适用场景。分析何时使用ModelSerializer简化代码,何时使用Serializer处理复杂验证。以注册流程为例,说明自定义验证及密码加密的必要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果有模型类操作,则使用ModelSerializer。

如果没有模型类操作,则使用Serializer。

一般,图形验证码,短信验证码这种情况下没有模型类操作,可以使用Serializer,或者使用ModelSerializer省略的代码不多,也可以使用。

在通常情况下,使用ModelSerializer可以减少代码量。

 

用网页注册为例,在写代码的过程中发现:

1.接收的某些值不存在于模型类的属性中,需要额外定义。如确定密码,短信验证码等。

2.验证方法需要自己写。

3.创建方法默认是将接收的值赋给属性,但是某些值不对应着属性,如密码需要加密后再赋值。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值