相关疑难解决方法(0)

为什么Django Rest Framework不鼓励模型级验证?

Django Rest Framework序列化程序不会调用Model.clean何时验证模型序列化程序.给出的解释是,这可以从Django Rest Framework 3.0发行说明中获得"更清晰的关注点分离" :

ModelSerializer验证和ModelForm之间的差异.

此更改还意味着我们不再.full_clean()在模型实例上使用该方法,而是在序列化程序上显式执行所有验证.这样可以实现更清晰的分离,并确保ModelSerializer类上没有自动验证行为,这些行为也无法在常规Serializer类上轻松复制.

但是,什么样的关注是Django的REST框架的尝试分开的作者?


我的猜测是,他们说模型实例不应该关注它自身的有效性.如果是这样的话,我不明白为什么.

python django serialization django-models django-rest-framework

30
推荐指数
1
解决办法
4222
查看次数