nor*_*tpy 2 django validation serializer django-rest-framework
我的序列化程序上有几个字段,我已经覆盖了validate序列化程序上的方法来进行一些对象级验证.
问题是在验证之后,我需要在将最终数据传递给create function之前编辑它.目前,我这样做:
class MySerializer(serializers.ModelSerializer):
def validate(self, attrs):
# Some lengthy validation with attrs['a'] and attrs['b'] and attrs['c']
# if validated
attrs['a'] = updated_a
attrs['b'] = updated_b
attrs['c'] = updated_c
return attrs
Run Code Online (Sandbox Code Playgroud)
验证后必须进行更新.我想知道是否有更好的方法来处理这个问题.
我可以继承Field并提供自定义to_internal,to_representation但我不知道如何事先进行验证.
validate方法不是最好的地方.特别是现在在DRF3中,您可以使用create方法.
def create(self, validated_data):
data = validated_data.copy()
data['a'] = 'updated value'
return super(MySerializer, self).create(**data)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1918 次 |
| 最近记录: |