Django 创建表 choices的妙用:get_<field_name>_display()

1.定义choices

我在创建表时,对于性别这个字段,定义了choices 选项,1代表男,2代表女

mysql中表的数据如下,里面存储的是1或2

如果我们在网页上展示的时候,想展示"男"或"女",而不是数字1或2

我们可以通过get_<field_name>_display() 方法获取该字段的可读值,而不是直接显示数据库中存储的值。

其中**<field_name>就是我们定义时该字段的命名:gender**

2.使用get_<field_name>_display()

在python语法中,我们可以通过 obj.get_gender_display() 来获取性别的可读值("男" 或 "女"),例如

而在模板语法中,我们通过{{ obj.get_gender_display }}来获取性别的可读值(与python语法相比没有小括号),例如

总结:get_<field_name>_display() 是 Django 提供的一个便捷方法,用于获取带有 choices 选项字段的可读值。

相关推荐
程序设计实验室12 分钟前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三2 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
canonical_entropy3 小时前
AI时代,我们还需要低代码吗?—— 一场关于模型、演化与软件未来的深度问答
后端·低代码·aigc
颜如玉4 小时前
HikariCP:Dead code elimination优化
后端·性能优化·源码
考虑考虑5 小时前
Jpa使用union all
java·spring boot·后端
用户2519162427115 小时前
Python之语言特点
python
bobz9655 小时前
virtio vs vfio
后端
刘立军5 小时前
使用pyHugeGraph查询HugeGraph图数据
python·graphql
Rexi6 小时前
“Controller→Service→DAO”三层架构
后端
bobz9656 小时前
计算虚拟化的设计
后端