https://github.com/Coxhuang/django-transaction.git
Python3.6
Django==2.0.6
事务回滚就是在操作数据库时,如果发生异常,能让数据回到原来的状态
没有使用事务回滚
def new_stu(request):
models.Student.objects.create(name="cox_raise")
raise Http404("异常")
return HttpResponse("success")
使用事务回滚,但没有发生异常
from django.db import transaction
def new_stu(request):
with transaction.atomic(): # 事务回滚
models.Student.objects.create(name="cox2")
return HttpResponse("success")
使用事务回滚,发生异常
from django.db import transaction
def new_stu(request):
with transaction.atomic(): # 事务回滚
models.Student.objects.create(name="cox_404")
raise Http404("异常")
return HttpResponse("success")
并没有生成数据