django admin下拉列表不显示值,显示为object的处理
Posted 朝阳的向日葵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django admin下拉列表不显示值,显示为object的处理相关的知识,希望对你有一定的参考价值。
问题:模板中创建form表单中的下拉列表, 前台打开页面显示object,而不是值,如图:
尝试了多种办法无果,最后解决了,处理办法是修改models.py,原来的model:
- class TechnicistLocation(models.Model): # 技术人员位置
- LocationName = models.CharField(‘位置名称‘, max_length=20)
- class Meta:
- verbose_name_plural = ‘技术人员位置‘
- app_label ="schedule"
- def __unicode__(self):
- return self.LocationName
修改后的model:
- class TechnicistLocation(models.Model): # 技术人员位置
- LocationName = models.CharField(‘位置名称‘, max_length=20)
- class Meta:
- verbose_name_plural = ‘技术人员位置‘
- app_label ="schedule"
- def __str__(self):
- return self.LocationName
区别就在倒数第二行,python3直接使用__str__(self)就可以了,如果是python2,则要用__unicode__(self)
以上是关于django admin下拉列表不显示值,显示为object的处理的主要内容,如果未能解决你的问题,请参考以下文章
如何使用列表中显示的相关项目的下拉列表使特定模型类的 Django contrib Admin 更改列表可编辑?
Django Admin ForeignKey字段小部件选项和不一致的默认值