我正在使用 django 和 mongoengine。当我尝试使用 .save() 方法保存新创建的实例时,这是我一次又一次遇到的错误。我第一次能够创建模型实例,但之后任何发布请求都会引发此错误。这是我的文档结构:
class Client(DynamicDocument):
name = fields.StringField(required=True,max_length=30)
uuid = fields.UUIDField(default=uuid.uuid4())
contactEmail = fields.EmailField(required=True,max_length=30)
contactPhone = fields.StringField(required=True,max_length=30)
contactPerson = fields.StringField(required=True,max_length=30)
class ClientSerializer(mongoserializers.DocumentSerializer):
class Meta:
model = Client
fields = ('id','name','uuid','contactEmail','contactPhone','contactPerson')
这是我发出帖子请求的地方:
def post(self, request, format=None):
serializer = ClientSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
但我发现了错误:
NotUniqueError: 试图保存重复的唯一键(E11000 重复键错误集合:project.client index: UUID_1 dup key: { : null })
我被困在这里。请告诉我哪里出错了,因为我是 django 的菜鸟。任何帮助将不胜感激。