我有一个带有选择列表/正整数字段的模型类。django views.py - 显示正整数文本值
class AchievementDetails(models.Model, FillableModelWithLanguageVersion):
ACADEMIC_ACHIEVEMENT = 1
COMMERCIAL_ACHIEVEMENT = 2
PERSONAL_ACHIEVEMENT = 3
PROFESSIONAL_ACHIEVEMENT = 4
SPORTING_ACHIEVEMENT = 5
OTHER_ACHIEVEMENT_TYPE = 6
ACHIEVEMENT_TYPES = (
(ACADEMIC_ACHIEVEMENT, _('Academic Details')),
(COMMERCIAL_ACHIEVEMENT, _('Commercial Achievement')),
(PERSONAL_ACHIEVEMENT, _('Personal Achievement')),
(PROFESSIONAL_ACHIEVEMENT, _('Professional Achievement')),
(SPORTING_ACHIEVEMENT, _('Sporting Achievement')),
(OTHER_ACHIEVEMENT_TYPE, _('Other Achievement Type')),
)
....
achievement_type = models.PositiveIntegerField(choices=ACHIEVEMENT_TYPES)
....
在我的views.py中,我试图显示所选文字的成就类型。例如:学术成就
目前我只能显示选定的数值。例如:1
下面是我在我的views.py代码:
def achievement_details(request):
....
for ad in achievement_details:
ad.achievement_type_as_text = ad.achievement_type
....
什么是正确的代码返回ACHIEVEMENT_TYPES的选择的文本?
感谢您的回答。如果我把你的代码放在views.py中。我收到错误消息:全局名称'ACHIEVEMENT_TYPES'未定义。 如何导入ACHIEVEMENT_TYPES?不确定如何从models.py导入它,或者即使我这样做是正确的。 – user1261774 2014-09-24 05:36:42
您可以将其放置在models.py文件中,然后如果您需要在其他地方使用它,则可以执行以下操作:从models.py导入ACHIEVEMENT_TYPES – 2014-09-27 05:51:21