使用django.db中的transaction
from django.db import transaction
此库封装了一个方法atomic() 包含开启事务,回滚和提交
1使用transaction需在settings数据库设置定义如下,表示使用全局事务,相当于一个排它锁
'ATOMIC_REQUESTS':True
2 在views视图文件中不使用事务的方法加上装饰器,表示不使用事务
@transaction.non_atomic_requests
3 在需要使用事务的位置调用atomic()方法
with transaction.atomic():
order.save()