2010-02-23 60 views
1
picture_url = models.CharField(max_length=2000) 

回答

3

你需要添加null=True如果列可以爲空:

picture_url = models.CharField(max_length=2000, null=True) 
+0

從技術上講,如果您使用的是管理應用程序,則需要null = True和blank = True。 – Pace 2010-02-23 01:32:58

+0

參考:http://docs.djangoproject.com/en/1.1/ref/models/fields/#django.db.models.Field.null。 – 2010-02-23 02:06:05

0

默認領域都有null設置爲False試試這個

picture_url = models.CharField(max_length=2000, blank=True) 

http://docs.djangoproject.com/en/1.1/ref/models/fields/#null

+0

我不我認爲這是正確的。他希望將空值置於列中,但數據庫模式不匹配。 'blank = True'說「如果你不給我任何東西,我會在這裏放一個空值」。 'null = True'表示「此列可以爲空」。 – 2010-02-23 01:23:04

+0

這將工作,但Django規範說不要在基於String的值上使用'null = True'。相反,該字段應至少設置爲空字符串。我不確定會有什麼影響,但那是文檔所說的。 http://docs.djangoproject.com/en/1.1/ref/models/fields/#null – buckley 2010-02-23 02:04:32

+0

»本質上沒有任何「反響」,但總的來說它被認爲是一個壞主意,因爲現在有兩種方法可以表示「no data」('null'和'「」',空字符串)。然而,我發現區別通常是有用的:'null'可以表示_no data_存在,而''「'表示數據存在,但沒有值。例如,在根本沒有中間名的文化中,某些人的'middle_name'列可能是'null';但在具有中間名的不同文化中,對於那些沒有中間名的人來說,這一列可能只是空白。 – 2010-02-23 04:05:22