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

相关推荐
山烛1 分钟前
深度学习:卷积神经网络(CNN)
图像处理·人工智能·python·深度学习·cnn·卷积神经网络
轻松Ai享生活13 分钟前
详解Linux LVM (Logical Volume Manager)
linux·后端
华仔啊21 分钟前
别再问了!Java里这几种场景,用抽象类就对了
java·后端
guojl25 分钟前
Gateway源码分析
后端·微服务
明天过后012238 分钟前
PDF文件中的相邻页面合并成一页,例如将第1页和第2页合并,第3页和第4页合并
java·python·pdf
tingting011940 分钟前
Spring Boot 外部配置指定不生效的原因与解决
java·spring boot·后端
2501_909686701 小时前
基于SpringBoot的网上点餐系统
java·spring boot·后端
天天摸鱼的java工程师1 小时前
聊聊线程池中哪几种状态,分别表示什么?8 年 Java 开发:从业务踩坑到源码拆解(附监控实战)
java·后端
杨杨杨大侠1 小时前
第4篇:AOP切面编程 - 无侵入式日志拦截
java·后端·开源