1
settings.py장고 - 예외가 내 코드에
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'diva',
'USER': 'root',
'PASSWORD': 'admin',
'ATOMIC_REQUESTS':True,
'HOST': 'localhost',
'PORT': '3306',
},
}
views.py
def create_project(self, request):
try:
with transaction.atomic():
code here
except Exception as e:
print "Exception--->",str(e)
response = {"status":"failed",'response': ugettext("projects.services.create_project.failure")}
stat = status.HTTP_400_BAD_REQUEST
return Response(response, status=stat)
을 제기 때 ObjectDoesNotExist 예외 롤백이 발생되지 제기하는 경우 롤백은 발생하지 않습니다 , 누구든지 트랜잭션 장고 예제에서 작동하는지 설명 할 수 있습니다.
아야! 나는 물린 전에 이것을 읽었 기 때문에 기쁩니다. 누구든지 왜 장고가이 상황에서 DB 변경 사항을 유지합니까? – nigel222
설명해 주셔서 감사합니다. @ e4c5. 내 코드에서 예외가 발생하고 뷰에서 내 자신의 응답을 보낼 수 있으면 전체 트랜잭션을 롤백해야합니다. 나는 그것을 어떻게 얻을 수 있습니까? –
죄송합니다. 귀하의 의견을 놓친 것 같습니다. 낡은 대답을 할 때이 점을 그냥 지나쳤습니다. 당신은 여전히 도움이 필요합니까 아니면 이것을 분류 해 놓았습니까? – e4c5