Django - 模型属性'getter'?

时间:2011-01-18 15:47:38

标签: django django-models

如果我有这样的模型:

  class Entry(models.Model):
 STATUS_LIVE = 1
 STATUS_DRAFT = 2
 STATUS_HIDDEN = 3
 STATUS_CHOICES = (
  (STATUS_LIVE, ('Live')),
  (STATUS_DRAFT, ('Draft')),
  (STATUS_HIDDEN, ('Hidden')),
 )

 id = models.AutoField(primary_key=True)
 status = models.PositiveSmallIntegerField(choices=STATUS_CHOICES, 

我想在视图中将属性“状态”显示为“实时”,“草稿”或“隐藏”(而不是1,2或3),我该怎么做?

似乎Django在模型中没有任何类型的getter / setter功能,我希望能够使用entry.status,而不是像entry.full_status这样的东西,因为它变得非常混乱,有很多不同的命名属性。

任何建议都将不胜感激

1 个答案:

答案 0 :(得分:7)

您可以致电Entry.get_status_display()