我正在尝试从CharField获取当前选择的选项并在 str 方法中使用它,如下所示:
class Foo(models.Model):
measurement_value = models.FloatField(max_length=200)
CHOICES = (('a', 'Alpha'), ('b', 'Beta'))
choice = models.CharField(max_length=5, choices=CHOICES, default='a')
def __str__(self):
"""String representation for the foo object."""
return str(self.measurement_value) + " " + self.choice
例如,如果我想添加带有测量10.5和选择'a'(Alpha)的对象foo, str 将返回:“10.5 Alpha”
目前,我提供的代码返回:“10.5 a”。
答案 0 :(得分:2)
您可以使用实例方法get_{}_display
获取人类可读的选择名称你的例子
def __str__(self):
return str(self.measurement_value) + " " + self.get_choices_display()