我有一个序列化程序,我正在尝试添加字段级验证,我需要验证序列化的某些字符字段是否为空,以及 bool 字段是真还是假。

我有这个序列化程序,但即使 Ficha_publicada 是假的,我也永远不会返回错误

class PublicarSerializer(serializers.Serializer):

    Titulo = serializers.CharField(required=True)
    Ficha_publicada = serializers.BooleanField()

    def validate_Titulo(self, attrs, source):
        value = attrs[source]

        if not Ficha_publicada:
            raise serializers.ValidationError("Ficha no publicada")
        return attrs

    class Meta:
        model = Fichas

最佳答案

使用 attrs['Ficha_publicada'] :

if not attrs['Ficha_publicada']:
    raise serializers.ValidationError("Ficha no publicada")
return attrs

关于Django rest 框架 - 序列化程序中的字段级验证,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26119672/

10-11 02:17