Вот фрагмент кода вида:
@transaction.atomic()
def insert_in_sample_table(request):
try:
with transaction.atomic():
insert_obj = SampleTable1.objects.create(fld_id=2, fld_name='abc')
raise Exception ("This is manual exception")
insert_obj2 = SampleTable2.objects.create(fld_id=1, fld_name='xyz')
return HttpResponse("SUCCESS")
except Exception as e:
return HttpResponse(str(e))
Существует две модели:
SampleTable1
SampleTable2
Я вручную вызвал исключение после первого создания, и теперь я ожидаю, что изменения, сделанные в первой модели (SampleTable1), должны быть отменены.Но, к сожалению, я не вижу отката
Я добавил 'ATOMIC_REQUESTS': True,
в DATABASE в файле settings.py
Я удалил
@transaction.atomic()
и проверил,по-прежнему не выполняется откат.
Как выполнить откат первой транзакции базы данных?