create_list = []
if not compare_create_df.empty:
for index, create_info in compare_create_df.iterrows():
create_list.append(RoleResourceList(id=create_info['id'],
role_id=role_id,
value=create_info['value'],
children_value=create_info['children_value'],
))
RoleResourceList.objects.bulk_create(create_list)
if not compare_change_df.empty:
id_list = compare_change_df['id'].tolist()
role_resource_queryset = RoleResourceList.objects.filter(id__in=id_list, role_id=role_id)
for change_info in role_resource_queryset:
id = change_info.id
resource_data = compare_change_df[compare_change_df['id'] == id]
change_info.role_id = role_id
change_info.value = resource_data['value'].tolist()[0]
change_info.children_value = resource_data['children_value'].tolist()[0]
RoleResourceList.objects.bulk_update(role_resource_queryset, ["id", "role_id",
"value",
"children_value"])
试了下,代码可行,记录下代码,但还不懂原理.后续随缘更新

本文记录了在Django中使用bulk_create和bulk_update进行数据批量创建和更新的操作,虽然已验证代码可行,但对于底层原理仍有待深入理解,未来将适时补充详细解析。

458

被折叠的 条评论
为什么被折叠?



