2013-04-16 4 views
9

나는 때로는 비어있는 DateField가 필요한 django 프로젝트를 만들고있다.Django 모델 : NULLable 필드

#models.py 
end = models.DateField(default=None, blank=True) 

을하지만 python manage.py sql myapp을 실행할 때 SQL 문은 항상 따라서 내 필드가 Null을 허용하지 않습니다

CREATE TABLE "myapp_date" (
"end" date NOT NULL 
); 

끝나게하고 난에 무엇을해야하는지 이해할 수 없다 : 내 모델은 다음과 같습니다 그렇게 만들어. 어떤 아이디어라도 감사 할 것입니다!

답변

24

당신은

end = models.DateField(default=None, blank=True, null=True) 

은 기본적으로 blank 당신이 그것을 null 값을 전달할 수 있습니다 사용해야하지만, null은 null 값을 허용하도록 데이터베이스를 알려줍니다.

+1

나는 부끄럽다. 나는 이미 그것을 시도했다고 생각했다; 나는 세 가지 주장을 동시에 시도하지 않았던 것 같아요 ... 지금 일하고 있습니다, 도움을 주셔서 감사합니다 !! – Robin

+0

아무 문제도없고, 우리 모두에게 발생합니다. – Ngenator

+0

그것은 나를 위해 작동하지 않았습니다. 실제로 나중에 날짜 필드를 추가하고 있습니다. 이미 날짜 필드가없는 값이 이미 있습니다. –