Django REST框架中的验证

2024-04-26 14:51:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试验证django rest框架中的现有记录,并遵循link

在我的序列化程序类中,我的类像。在

from django.forms import widgets
from rest_framework import serializers
from models import Part

class PartSerializer(serializers.Serializer):

    part_id = serializers.CharField(required=True, validators=[UniqueValidator(queryset=Part.objects.all())] )
    capacity = serializers.IntegerField(required=True)
    price = serializers.IntegerField(required=True)


    def create(self, validated_data):

        """
        Create and return a new `Part` instance, given the validated data.
        """
      #  try:part_exist = Part.objects.get(part_id = validated_data['part_id'])
      #  except:part_exist = None
      #  if part_exist:
      #      raise  serializers.ValidationError('Part name already exist.')
      #  else:
        return Part.objects.create(**validated_data)

但我总是收到错误name 'UniqueValidator' is not defined

我不知道如何导入,因为文档中没有提到,请帮助我如何导入。如果不可能,我应该在视图下编写自己的验证逻辑?在

谢谢


Tags: djangofromimportrestidtruedataobjects