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 选项字段的可读值。

相关推荐
KYGALYX5 小时前
服务异步通信
开发语言·后端·微服务·ruby
掘了5 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
ValhallaCoder5 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
爬山算法5 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
猫头虎5 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
Moment6 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
八零后琐话6 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
Cobyte6 小时前
AI全栈实战:使用 Python+LangChain+Vue3 构建一个 LLM 聊天应用
前端·后端·aigc
青春不朽5127 小时前
Scrapy框架入门指南
python·scrapy