捕获特定的失败记录在bulk_create Django的

问题描述:

我使用bulk_create插入用户的千次:捕获特定的失败记录在bulk_create Django的

new_users_bulk_list.append(User(user_id=user_id, date_of_birth=dob)) 
    if len(new_users_bulk_list) >= settings.BULK_LIMIT: 
     try: 
      User.objects.bulk_create(new_users_bulk_list) 
      new_users_bulk_list[:] = [] 
     except Exception as e: 
      print("Error: Creating users " + str(e)) 

和bulk_update更新多条记录:

user_bulk.append(user_sequence) 
     if len(user_bulk) == settings.BULK_LIMIT: 
      bulk_update(user_bulk) 
      user_bulk[:] = [] 

如果bulk_create或bulk_update创建失败/更新记录,我如何识别这些失败的记录?有没有办法捕捉特定的失败记录?

谢谢,

我不认为这是可能的。 This的答案可能会给你一些见解。

我可能会提出一个远为完善的解决方法:手动将new_users_bulk_list分成一些大小的批次。这至少可以让你对发生的事情和失败的事件有一定程度的控制。