Django]models中定義的choices 字典在頁面中顯示值
在django的models.py 中,我們定義了一些choices的元組,類似一些字典值,一般都是下拉框或者單多選框,例如 0對應男 1對應女等
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=‘區域代碼‘)
level = models.IntegerField(choices=Area_Level,verbose_name=‘層級‘, null=True)
在頁面中有個table要把表中的字段顯示出來,如果數據庫中存儲的是0就顯示 全國, 1就顯示省、直轄市 類似:
名稱 代碼 層級 上級地區 操作
全國 全國(0) 刪除
北京 bj 省、直轄市(1) 全國 刪除
django中有沒有這種方法可以讓我們直接使用呢?
解決:
我們可以先google 看下,第一個結果:
http://stackoverflow.com/questions/4320679/django-display-choice-value
這裏就是答案了,一個是用django自帶的方式,一個是使用if來判斷(這種顯然大家都不喜歡)
django的文檔在這裏:
https://docs.djangoproject.com/en/dev/ref/models/instances/#django.db.models.Model.get_FOO_display
在頁面上我們只要這麽寫就可以直接把字典的值顯示出來了
<td>{{ obj.get_level_display }}({{ obj.level }})</td>
作者:orangleliu
來源:CSDN
原文:https://blog.csdn.net/orangleliu/article/details/40268093
Django]models中定義的choices 字典在頁面中顯示值