Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python extra_kwargs字典中的Django rest框架传递字段错误_Python_Django_Django Rest Framework - Fatal编程技术网

Python extra_kwargs字典中的Django rest框架传递字段错误

Python extra_kwargs字典中的Django rest框架传递字段错误,python,django,django-rest-framework,Python,Django,Django Rest Framework,我正在自定义序列化程序中SlugField的不存在错误消息,如下所示: class PolicyCreateUpdateSerializer(serializers.ModelSerializer): source_ip_group = serializers.SlugRelatedField(queryset=IPGroup.objects.all(), slug_field='name',

我正在自定义序列化程序中SlugField的不存在错误消息,如下所示:

class PolicyCreateUpdateSerializer(serializers.ModelSerializer):
    source_ip_group = serializers.SlugRelatedField(queryset=IPGroup.objects.all(), slug_field='name',
                                                   error_messages={"does_not_exist": "Custom"})
    enabled = serializers.BooleanField()

    class Meta:
        model = Policy
        fields = ['id', 'name', 'source_ip_group', 'enabled']
这和预期的一样有效。但是,当我尝试将其添加到类的Meta属性中时,它不起作用

class PolicyCreateUpdateSerializer(serializers.ModelSerializer):
    source_ip_group = serializers.SlugRelatedField(queryset=IPGroup.objects.all(), slug_field='name')
    enabled = serializers.BooleanField()

    class Meta:
        model = Policy
        fields = ['id', 'name', 'source_ip_group', 'enabled']
        extra_kwargs = {'source_ip_group': {"error_messages": {"does_not_exist": "Custom"}}}

我做错了什么?

明确提及该字段将被使用,并将忽略该字段的任何额外的
标记


Ref:

所以我无法传递额外的\u kwargs?我认为在使用声明字段时忽略
额外的\u kwargs
的逻辑是因为如果您自己声明字段,那么您可以提及所有需要覆盖的内容,而
额外的\u kwargs
用于覆盖字段的一部分,不是全部。