我希望我的模型具有兩個字符串表示形式:一個顯示在後端日誌中用於調試目的,另一個清晰的表示形式在HTML中表示時顯示給最終用戶。現在,我只是重寫__unicode__()
。有沒有辦法做到這一點?Django:模型的字符串表示
8
A
回答
16
您也可以嘗試__repr__
和__str__
用於記錄/調試目的。這是可能的(至少它應該是這樣),你的記錄器/調試器使用repr(object)
來記錄你的對象。
7
使用性能
class SomeThing(models.Model):
foo=
bar=
baz=
def __unicode__(self):
return "{0} {1}".format(self.foo, self.bar)
@property
def details(self):
return repr(dict(foo=self.foo, bar=self.bar, baz=self.baz))
現在,您可以登錄someObject.details
+0
那`__repr__`屬性呢?可以以某種方式使用它嗎?因此`__unicode__`可以很好地顯示例如管理員,`細節`很好轉儲對象到日誌? – Tjorriemorrie 2014-08-05 14:42:47
相關問題
- 1. Django模型問題:不返回模型字符串表示名稱
- 2. Django模型搜索連接字符串
- 3. Django:從字符串獲取模型?
- 4. 顯示django表中的模型字段
- 5. Django:列表中的字符串(模板)
- 6. 類型文字的字符串表示
- 7. Laravel顯示 「字符串()」 時,從模型
- 8. django訪問模型字段的字符串
- 9. django模板中的字符串的子字符串
- 10. Django串行器顯示模型字段作爲字典
- 11. 將django模型字符串字段作爲str代替unicode
- 12. 字符串表示
- 13. 字符串表示
- 14. Django Form字段的字符串列表
- 15. django autocomplete_light可以顯示比模型的字符串表示更多的東西嗎?
- 16. Django的模板格式字符串
- 17. Django模板中的字符串操作
- 18. Django的URL模式 - 字符串參數
- 19. 模板中的隨機字符串django
- 20. Django模型中可空的TextField或空字符串?
- 21. 來自ISO8601時間戳字符串的Django模型DateTimeField
- 22. django在模型中的天數表示
- 23. Django的字符串
- 24. lambda的字符串表示
- 25. 如何顯示包含django模板變量的字符串?
- 26. Django的模板顯示項目值或空字符串
- 27. Django的,型號列表中列出的字符串
- 28. django模板,查找字符串替換爲其他字符串
- 29. 如何在C#中表示(字符串,字符串[],字符串[])#
- 30. Django表單模型中的DateTime字段
事實上,`__repr__`用於調試/內部表示,要麼`__unicode__`或`__str__`用於一般用途。這應該有更多upvotes。 – 2014-10-09 10:55:13