小编rho*_*ard的帖子

验证时序列化器字段“源”参数不起作用

为什么在尝试验证数据时“来源”不起作用?

from rest_framework import serializers

class Test(serializers.Serializer):
    my_field = serializers.CharField(source='myField')
    
test_data = {'myField': 'test1', 'myOtherField': 'test2'}

Test(test_data).data
Run Code Online (Sandbox Code Playgroud)

输出:{'my_field':'test1'}。

Test(test_data).is_valid(raise_exception=True)
Run Code Online (Sandbox Code Playgroud)

输出:AssertionError:无法调用,.is_valid()因为data=在实例化序列化器实例时未传递关键字参数。

Test(data=test_data).is_valid(raise_exception=True)
Run Code Online (Sandbox Code Playgroud)

输出: ValidationError: {'my_field': [ErrorDetail(string='此字段为必填项。', code='required')]}

python django django-rest-framework

5
推荐指数
1
解决办法
1224
查看次数

标签 统计

django ×1

django-rest-framework ×1

python ×1