我已经知道 drf 有一个接口可以向 obejct 添加验证器,我有一个视图可以通过一个请求创建多个 Param 对象,我想验证是否有两个或多个对象的name和value字段相同,我该如何验证序列化器中的对象列表?
模型.py
class Param(models.Model):
name = models.CharField(max_length=256)
value = models.CharField(max_length=256)
class Meta:
unique_together = ('name', 'value')
Run Code Online (Sandbox Code Playgroud)
序列化器.py
class ParamSerializer(serializers.ModelSerializer):
class Meta:
model = models.ParamKey
fields = ['name', 'value']
extra_kwargs = {
'id': {
'required': False,
},
'name': {
'required': False,
}
}
Run Code Online (Sandbox Code Playgroud)
视图.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()
Run Code Online (Sandbox Code Playgroud)