코딩/Django

on_delete 장고의 기능에 대하여

김은수2 2023. 5. 1. 10:01

on_delete 옵션은 Django에서 모델을 구현할 때 데이터베이스 상에서 참조무결성

(관계 데이터베이스 관계 모델에서 2개의 관련 있던 관계 변수 간의 일관성)을 유지하여 

ForeignKeyField가 바라보는 값이 요소를 처리하는 방법을 지정해준다. 

 

1. CASCADE: ForeignKeyField를 포함하는 모델 인스턴스(row)도 같이 삭제한다. 

 

2. PROTECT: 해당 요소가 같이 삭제되지 않도록 ProtectedError를 발생시킴

 

3. SET_NULL: ForeignKeyField 값을 NULL로 바꾼다. null = True 일 때만 사용가능

 

4. SET_DEFAULT: ForeignKeyField 값을 default값으로 변경한다. default값이 있을 때만 사용할 수 있다. 

 

5. SET(): ForeignKeyField 값을 SET에 설정된 함수등에 의해 설정한다. 

 

6. DO_NOTHING: 아무런 행동을 취하지 않는다. 참조 무결성을 해칠 위험이 있어서 잘 사용되지 않음

'코딩 > Django' 카테고리의 다른 글

파일 입출력  (0) 2023.05.03
장고 과제 해설  (1) 2023.05.02
04-25 til 장고와 MVT패턴  (0) 2023.04.25
로그인의 다양한 방식들  (0) 2023.04.24
장고 심화내용 이번주에 배운것들 정리  (0) 2023.04.23