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

相关推荐
宸津-代码粉碎机29 分钟前
OpenAI 连夜迎战 Grok Bot 和 Muse:AI 智能体从 “会聊天” 到 “能办事”,现在入场还来得及吗
java·大数据·人工智能·分布式·python
Y38153266244 分钟前
SERP API 计费口径:credits_charged、执行失败扣费与退款边界
python·搜索引擎
噢,我明白了2 小时前
java中唯一键和幂等键的应用
java·后端
GreenTea2 小时前
我把 Agent 的 while 循环拆掉了:一种你可能没想到的 Agent 架构
前端·后端·架构
考虑考虑2 小时前
synchronized字符串常量
java·后端·java ee
蒸鱼Yuzheng2 小时前
设备端性能工件可靠导出:断点续传、哈希、manifest 与失败恢复
android·自动化测试·python·adb·数据完整性
颜进强3 小时前
16 · NestJS LifecycleEvents 生命周期事件:五个钩子、三条边界,和 rag-server 的优雅停机
前端·后端·ai编程
圆圆讲门店3 小时前
挑选同城获客服务机构时需要考量的核心因素都有哪些?
大数据·网络·人工智能·python
GetcharZp3 小时前
定位不再一个个吐坐标:英伟达 LocateAnything 上手全攻略
后端
傻啦嘿哟3 小时前
Python的默认参数把我坑惨了,原来写[]和写None的区别这么大
开发语言·python·机器学习