python-django-事务使用

 

 

其中任何一个步骤失败都不行,
失败则回滚

 

 

 

在一对一的模型下
例如,用户基本信息和用户详细信息
必须两个一起添加用户信息才算成功

 

 

 

 

 

 

 

 

通过位置参数来实现

 

 手动控制事务

def page_trans_hand(request):
    #手动控制事务
    user1 = WeiboUser.objects.get(pk=4)
    # 发布微博
    try:
        #放弃自动提交
        transaction.set_autocommit(False)
        weibo = Weibo.objects.create(user=user1, content='事务事务2hand')
        # 发布评论
        comment = Commont.objects.create(user=5,
                                         content="好玩的事务2hand",
                                         weibo=weibo)
        print('weibo', weibo.pk, '  comments', comment.id)
        transaction.commit()#手动提交事务
    except:
        # #不使用事务的时候手动删除数据
        # weibo.delete()
        #手动控制事务,实现回滚
        transaction.rollback()
    return HttpResponse('ssss')

 

posted @ 2020-05-08 16:20  linux——quan  阅读(382)  评论(0编辑  收藏  举报