Home > Article > Web Front-end > [Django]The choices dictionary defined in models displays values in the page_html/css_WEB-ITnose
Question:
In django's models.py, we define some tuples of choices, similar to some dictionary values, usually drop-down boxes or single and multiple selection boxes, for example, 0 corresponds to male, 1 corresponds to female, etc.
class Area(models.Model): Area_Level = ( (0, u'全国'), (1, u'省、直辖市'), (2, u'市、直辖市区'), (3, u'区、县等'), ) areaname = models.CharField(max_length=30,unique=True, verbose_name='区域名称') code = models.CharField(max_length=20,blank=True, default="", verbose_name='区域代码') parentid = models.IntegerField(verbose_name='父级id', null=True) level = models.IntegerField(choices=Area_Level,verbose_name='层级', null=True)
There is a table on the page to display the fields in the table. If 0 is stored in the database, it will display the whole country, and 1 will display the province. , municipalities are similar:
名称 代码 层级 上级地区 操作全国 全国(0) 删除北京 bj 省、直辖市(1) 全国 删除
We can google it first, the first result:
http://stackoverflow.com/questions/4320679/ django-display-choice-value
Here are the answers, one is to use django’s own method, and the other is to use if to judge (obviously everyone doesn’t like this)
Django’s documentation is here:
https://docs.djangoproject.com/en/dev/ref/models/instances/#django.db.models.Model .get_FOO_display
On the page, we can directly display the dictionary value by writing this
<td>{{ obj.get_level_display }}({{ obj.level }})</td>
If you want to use the framework well, you still need to read more documents.
This article comes from the "orangleliu Notebook" blog. Please be sure to keep this source when reprinting http://blog.csdn.net/orangleliu/article/ details/40268093