我有一个API站点,可接收JSON数据并将其保存到数据库。有时在生产服务器上,我收到无法在我的开发服务器上复制的错误:
IntegrityError: duplicate key value violates unique constraint
我使用 Django 2.0 和 Django Rest框架
我还使用交易记录
ATOMIC_REQUESTS = True
我的代码看起来像(名称字段是unique = True):
for key in data['some_data']:
my_data_serializer = MyDataSerializer(data={
'name': key
})
if my_data_serializer.is_valid():
my_data_serializer.save()
是什么原因引起的。如果我这样发送开发服务器数据:
{
'some_data': ['one', 'two', 'one']
}
它可以正常工作,并且忽略重复项