장고 트렌젝션
개요편집
transaction. 하나의 작업 단위를 의미한다. 뷰에서 코드를 처리 할 때 위에서부터 하나하나씩 진행하게 되는데, 마지막까지 에러없이 진행되지 않고 중간에 진행이 끊기면 데이터가 망가지는 경우가 있다. 이런 경우에 사용하는 데코레이터가 있다.
장고에서 기본적으로 제공하는 데코레이터로, 따로 설치할 필요가 없이, 함수 앞에 @transaction.atomic만 달면 된다.
어느 한 부분에서라도 에러가 나면 DB에 반영했던 내용을 롤백해서 데이터가 꼬이지 않게 해준다.