gpt4 book ai didi

python-3.x - 在 Django 中更新多个表

转载 作者:行者123 更新时间:2023-12-05 03:38:52 24 4
gpt4 key购买 nike

我是 Django 和 DBMS 的新手。我有表 1 和表 2,我正在更新两者,如果表 1 已成功更新,我将转到更新表 2 的过程,如果出现错误在更新表 2 时,我需要还原我在表 1 中所做的更改。我如何在 Django 中实现它?

这是我大致做的代码

def user_operation(request, id):    
if request.method == 'PUT':
try:
json_fetch = json.loads(request.body)
update_emp = EmpDetailsModel.objects.get(emp_id=id)
for key,value in json_fetch.items():
flag = 0
if key == 'contact':
cont_update = EmpDetailsModel.objects.get(emp_id=id)
for contact in value:
flag = cont_update.empcontactmodel_set.create(phone_number=contact['number'], dev_type=contact['type'])
if flag == 0: return JsonResponse({'Error':'There was an Error !'})
continue
flag = update_emp.update(**{key:value})
if flag == 0: return JsonResponse({'Error':'There was an Error !'})

except KeyError:
return JsonResponse({'Error':'Invalid Key in request!'})

最佳答案

有一种非常有效的用法,称为原子 block 。有关更多信息和用法:docs

关于python-3.x - 在 Django 中更新多个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68814797/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com