在Django,a boolean field in MySQL is stored as a TINYINT。當我檢索它時,我得到0或1.不應該是False或True?有沒有辦法實現這種行爲?MySQL Django模型中的布爾字段?
回答
>>> u=User.objects.get(pk=1)
>>> u.is_active
1
>>> u.is_active==1
True
>>>
布爾列返回1或0的原因在您的問題的鏈接。
你的例子應該是:u.is_active == True – 2009-11-22 15:11:51
有沒有可能將布爾值字段隱藏爲True或False而不是1或0 – 2009-11-23 05:14:03
Juanjo,我列舉了一個例子來說明如何實現True或False結果。 拉瑪,我想應該可以通過修改Django的模型代碼,但我不知道這樣的解決方案。 – fest 2009-11-23 18:41:39
你可以爲你的模型,評估此爲你創建你自己的方法:
class User(models.Model):
active_status = models.BooleanField(default=1)
def is_active(self):
return bool(self.active_status)
那麼你對這個領域進行任何測試可能只是參考,而不是方法:
>>> u.is_active()
True
你可以甚至把它變成一個屬性:
class User(models.Model):
active_status = models.BooleanField(default=1)
@property
def is_active(self):
return bool(self.active_status)
因此,類的用戶d on't甚至要知道,它是作爲一種方法來實現:
>>> u.is_active
True
這裏是適合NullBooleanField
上述方法:
result = models.NullBooleanField()
def get_result(self):
if self.result is None:
return None
return bool(self.result)
有沒有什麼預期,這將導致不同的行爲只是一種局面基於類型?
>>> 1 == True
True
>>> 0 == False
True
>>> int(True)
1
>>> int(False)
0
- 1. Django的布爾字段觀點+模板
- 2. Oracle中的布爾型字段
- 3. django模型中的大整數字段
- 4. 將模型字段插入Django中現有的模型字段
- 5. 在Django模板中生成和調用布爾字段形式
- 6. MySQL:兩個布爾字段的索引
- 7. Django:模型字段內的子字段
- 8. 如何添加布爾字段到MySQL?
- 9. 什麼字段類型用於Django中的模型字段?
- 10. Django模型迭代字段
- 11. Django模型字段索引
- 12. django模型字段比較
- 13. Django模型 「斑點」 字段
- 14. 填充Django模型字段
- 15. Django Blob模型字段
- 16. django模型中的重複字段
- 17. django模型中的可選字段
- 18. Django模型中的自定義字段
- 19. Django中的未知字段模型
- 20. Django表單模型中的DateTime字段
- 21. Django中的模型集字段
- 22. django中的動態模型字段
- 23. django模型中的單個字段
- 24. Django隱藏模型中的假字段
- 25. ManyToMany模型字段的選擇更改基於布爾值
- 26. 由布爾字段
- 27. 如何將MySQL中的布爾型字段遷移到Heroku中的PostgreSQL?
- 28. 用Django中的更新方法切換布爾型字段的值
- 29. Django是否可以選擇更新模型中的一個布爾型字段而無需太多開發?
- 30. 在Django模型中棄用字段
是的,我讀到:MySQL用戶..在提供的鏈接。 – 2009-11-22 15:12:46