我需要讓我的Django應用程序允許我爲某個模型字段設置默認值NULL。我已經看過null,空白和默認參數,但它不是很清楚我需要使用哪三種組合來獲得所需的效果。我試過設置default=NULL
,但它拋出了一個錯誤。如果我指定blank=True, null=True
並且沒有默認值,它是否會默認回到NULL來運行?Django模型字段默認爲空
回答
嘗試default=None
。 python中沒有NULL
。
如果指定空=真型號場則該值將被存儲爲NULL在數據庫中,如果用戶沒有提供一個值。
這在大多數情況下都不是這樣,因爲通常它會存儲一個空字符串。 – hY8vVpf3tyR57Xib 2015-11-09 15:38:47
@AlfonsIngomar錯誤,從文檔 - https://docs.djangoproject.com/en/1.8/ref/models/fields/#null 「如果爲True,Django將在數據庫中將NULL值存儲爲NULL。默認爲假。」 – Kevin 2015-11-10 11:00:42
查看下一段落:避免在基於字符串的字段(如CharField和TextField **)上使用null,因爲空字符串值將始終以空字符串存儲,而不是NULL **。如果基於字符串的字段的值爲空= True,則表示它有兩個可能的值:「無數據」:NULL和空字符串。在大多數情況下,「無數據」有兩個可能的值是多餘的,Django約定是使用空字符串,而不是NULL。 – hY8vVpf3tyR57Xib 2015-11-10 16:08:38
- 1. django獲取默認模型字段值
- 2. CakePHP默認模型字段
- 3. 從模型方法的Django模型字段默認
- 4. Django - 如何將模型字段重置爲默認值?
- 5. django:不可空字段的默認值
- 6. 覆蓋默認字段類型在Django
- 7. 的Django模型字段:參考自上默認的關鍵字
- 8. Django如何配置爲不使默認字段不爲空?
- 9. django模型默認值
- 10. django modeltranslation - 默認字段?
- 11. Django AdminForm字段默認值
- 12. Django的DateTimeField字段默認
- 13. Django - 從另一個模型字段獲取默認值
- 14. 如何獲取Django模型中字段的默認值?
- 15. 設置在Django模型字段默認值更好的辦法
- 16. 如何重寫Django中的默認用戶模型字段?
- 17. 在django模型有一個默認的時間戳字段?
- 18. Django中間模型字段的m2m項目默認排序
- 19. 默認模型字段Rails 3.1
- 20. 使用RadioSelect窗體的Python/Django BooleanField模型默認爲空
- 21. 創建Django的表單字段默認爲空查詢集
- 22. Django窗體:默認值,如果用戶離開字段爲空
- 23. django中的用戶模型密碼字段默認密碼字段
- 24. 空整數字段在Django模型GraphQL
- 25. django模型屬性字段空列表
- 26. django將模型字段的默認值設置爲自身屬性
- 27. 如何使用PosgreSQL函數將Django模型字段定義爲默認值
- 28. Django:如何使內聯模型formset中的字段默認爲不可編輯?
- 29. Django - 默認的Django User模型是否有任何獨特的字段?
- 30. 清除輸入,textarea模糊和默認如果字段爲空
這樣做的伎倆,謝謝。 :) – SPoage 2011-01-05 14:32:17
爲了清楚起見,他所指的NULL是用於Django模型字段的。這允許/不允許將該值用於該值,該值在數據庫中作爲NULL存儲,而不是在Python中存儲。空白表示是否在forms/admin/etc中驗證所需的值。 – Nexion 2016-04-20 17:52:15
@Nexion,'default = None'不允許或不允許使用None值。它只是告訴Django如果沒有指定該字段的值應該是什麼值。 null = True'允許在Python代碼中使用None。它在數據庫中被視爲NULL。關於空白用於表單驗證你是對的。 – Bobort 2017-09-13 14:19:29