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 |