2010年12月28日 星期二

[Django] Model中的null 和 blank 設定與差異



models.CharField(max_length=200, null=False, blank=True)

Django的驗證, 預設每個攔位都是為必要的(required)

所以如果你想要將欄位設為空值, 必須再另外設定

在Django的Field有兩種值可以設定: blank and null

blank 只是用於Django自己的input欄位驗證 (Django’s input validation)

Null 是否允許讓你在Database裡插入NULL, 就是空值 (whether the database accepted NULL)

Null = Python的None = 不存在

blank = True 欄位檢查允許為空值
blank = False 欄位檢查不允許為空值
null = True 寫入資料庫允許為NULL (Python 為 None)
null = False 寫入資料庫不允許為NULL (Python 為 None)

See Also:
http://www.b-list.org/weblog/2006/jun/28/django-tips-difference-between-blank-and-null/
Related Posts Plugin for WordPress, Blogger...