Django里choices字段使用中文使用
假如想要将下面的表格里的内容数字换成对应的内容:https://img-blog.csdnimg.cn/direct/4227dd4c3e31458db2bf17678e8b43f7.png
需要更改成这样:
https://img-blog.csdnimg.cn/direct/10bcf75512c54e2684abdae030a01d19.png
下面是步骤:
在 python 里的 models.py 文件里,创建数据表的时间,用到了 choices
class Example(models.Model):
name = models.CharField(verbose_name="名称", max_length=32)
price = models.IntegerField(verbose_name="价格")
# 只适用于固定的选择
category = models.SmallIntegerField(verbose_name="资产类型", choices=((1, '文具类'), (2, '3C类'), (3, '房产类')))
在 views.py 文件里,从数据库里获取数据,传给前端页面:
def example_list(request):
queryset = models.Example.objects.all().order_by("-id")
return render(request, 'example_list.html', { "queryset": queryset })
在 example_list.html 文件里,做修改
<table border="1px">
<thead>
<tr>
<th>ID</th>
<th>标题</th>
<th>价格</th>
<th>分类</th>
</tr>
</thead>
<tbody>
{% for obj in queryset %}
<tr>
<td>{{ obj.id }}</td>
<td>{{ obj.name }}</td>
<td>{{ obj.price }}</td>
<td>{{ obj.get_category_display }}</td>
</tr>
{% endfor %}
</tbody>
</table>
在 html 里,得必须通过 obj.get_列表名称_display 的方法才能调用 choices 里的内容。
要想在 views.py 里,从数据库获取内容,可以通过
# 必须得添加括号 ()
obj.get_列表名称_display()
点个赞呗~
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]