ディレクトリ
まず、トランザクション
トランザクションの定義:アトミック操作に動作SQLステートメントの複数、いずれかの成功しながら、データの整合性と一貫性を保証するために元の状態にロールバックされる故障、(NoSQLのデータベーストランザクション用にサポートされている部分)
トランザクションの概念を詳しく見て:通訳サービス
第二に、例えば、
ジャンゴでのトランザクションを開く方法
# 事务
# 买一本 跟老男孩学Linux 书
# 在数据库层面要做的事儿
# 1. 创建一条订单数据
# 2. 去产品表 将卖出数+1, 库存数-1
from django.db.models import F
from django.db import transaction
# 开启事务处理
try:
with transaction.atomic():
# 在with代码块中写的代码属于同一个事务
# 创建一条订单数据
models.Order.objects.create(num="110110111", product_id=1, count=1)
# 能执行成功
models.Product.objects.filter(id=1).update(kucun=F("kucun")-1, maichu=F("maichu")+1)
except Exception as e:
print(e)