출처: https://meyouus.tistory.com/64 [정보 공유 - For Me For You For Us]
본문으로 바로가기

models.py에서 작업하다 보면 다음과 비슷한 상황이 나온적 있을 것이다:

# models.py
...
user = models.OneToOneField(User, null=True, blank=True, on_delete=models.CASCADE)
...

그렇다면 여기서 null=Trueblank=True의 차이점에 대해 의문을 가지는 사람들도 있을 것이다.

 

null=True는 그 데이터 값이 아예 NULL, 즉 정보가 없음. 아예 없는 데이터로 칠 수 있다고 의미하는 것이다.

 

반면 blank=True는 데이터 값이 blank, 즉 비어 있을 수 있다고 시사한다. blank=True는 데이터 값이 ' ' 로 나와도 상관 없음을 의미하는 것이다. 데이터베이스에는 ' '가 저장될 것이다.

 

위와 같이 null=Trueblank=True를 둘 다 적용시키면 어떤 방법으로든 데이터가 비워져 있을 수 있다는 뜻이다.