장고보기를 원한다면 좋겠습니다. 내 말은, 만약 거기에 2 DB를 -보기에 쓰기, 나는 둘 중 쓰기, 2 쓰기 중 하나를 원한다. 예를 들어Django atomic 요청은 어떻게 작동합니까?
: 나는이 문서에서 찾을 무엇
def test_view(request):
''' A test view from views.py '''
MyClass.objects.create()
raise Exception("whatever")
MyClass.objects.create()
유망 듯 : 웹 트랜잭션을 처리 할 수
일반적인 방법은 트랜잭션의 각 요청 을 래핑하는 것입니다. 이 동작을 사용하려는 각 데이터베이스의 구성에서 ATOMIC_REQUESTS를 True로 설정하십시오.
다음과 같이 작동합니다. Django는 뷰 함수를 호출하기 전에 트랜잭션을 시작합니다. 응답이 문제없이 생성되면 Django 이 트랜잭션을 커밋합니다. 뷰가 예외를 생성하면 Django 은 트랜잭션을 롤백합니다.
그러나 ATOMIC_REQUESTS = True
을 설정하더라도 test_view()
을 호출하면 첫 번째 MyClass 개체가 만들어집니다! 내가 뭘 놓치고 있니?
참고 : 나는
여기서 'ATOMIC_REQUESTS'값을 설정 했습니까? 'AUTOCOMMIT' 값은 무엇입니까? – koxt