我知道drf有一个接口可以向对象添加验证器,我有一个视图可以使用一个请求创建多个Param对象,我想验证是否存在两个或更多的对象,它们的name
和value
字段相同,我该如何在序列化程序中验证对象列表?
models.py
class Param(models.Model):
name = models.CharField(max_length=256)
value = models.CharField(max_length=256)
class Meta:
unique_together = ('name', 'value')
serializers.py
class ParamSerializer(serializers.ModelSerializer):
class Meta:
model = models.ParamKey
fields = ['name', 'value']
extra_kwargs = {
'id': {
'required': False,
},
'name': {
'required': False,
}
}
views.py
class ParamViewSet(viewsets.ViewSet):
def create(self, request):
serializer = serializer.ParamKeySerializer(
data=request.data, many=True)
if serializer.is_valid():
return Response()
return Response()