2011-07-08 161 views
69

外鍵字段可選我有這樣的代碼我可以在Django模型

subject  = models.ForeignKey(subjects) 
location  = models.ForeignKey(location) 
publisher = models.ForeignKey(publisher) 

有它並不總是可能的,我有書三個值。 所以有時如果我不知道主題或位置,或出版商。然後,我想保留它們爲空

但是,如果我有,那麼我需要選擇框來選擇。有沒有可能像

回答

135

當然,只需添加blank=True, null=True爲要像

subject = models.ForeignKey(subjects, blank=True, null=True) 
+1

保持可選都是需要各個領域?僅僅使用null = True會有什麼缺點? – Ward

+2

@WardC見https://docs.djangoproject.com/en/1.9/ref/models/fields/#blank –

+8

@WardC兩者的組合很頻繁,因爲通常情況下,如果你打算允許一個字段是在你的表單中空白, 你還需要你的數據庫來允許該字段的NULL值。 異常是CharFields和TextFields,它們在Django中從不保存爲NULL。 空白值作爲空字符串('')存儲在數據庫中。 –

相關問題