我的模型中的相關內容:Django的queryset的註釋,charfield與選擇,試圖讓顯示值
class AnalyticRecord(models.Model):
APP = "APP"
WEB = "WEB"
DASH = "DASH"
SOURCE_CHOICES = (
(APP, "Mobile Application"),
(WEB, "Website"),
(DASH, "User Dashboard"))
user = models.ForeignKey(User, blank=True, null=True)
event = models.ForeignKey(Event)
source = models.CharField(max_length=25, choices=SOURCE_CHOICES)
我試圖運行聚合命令。它工作得很好這樣的:
data = event.analyticrecord_set.all().values("source").\
annotate(label=Concat("source", Value(None), output_field=CharField()))
然而,問題是註釋label
返回「APP」,「網絡」,「DASH」,而不是實際的顯示值。我知道我通常可以使用get_FOO_display()
,但是如何將顯示值拉入我的批註調用中?我期待獲得我的source
字段的顯示值。謝謝!
顯示值不存儲在數據庫中,所以你怎麼指望它回到他們..? – thebjorn
@thebjorn我希望有一些方法來運行'get_FOO_display'函數或類似的東西來檢索值。我知道顯示值不會存儲在數據庫中。 – capcom