django之Models里常用小参数choices

choices字段参数

应用场景: 如果你需要创建一个有固定值的字段且这个字段的值是字符类型的,我们需要用到choices字段参数。

原因:因为在数据库中存字符类型的数据会大于其他数字类型的数据,而我们仅仅需要那几个固定的字符类型的值。在这种情况下如果我们要建立一个大型的网站,里面会有成千上万的数据,我们使用choices会大大减少数据库的存储压力。

案例:  建立一张User用户表  

  字段有 姓名  年龄  性别 

  而性别这个字段就符合我们choices的应用场景  它里面的值无非就是两个   男 或 女  因此我们可以用数字来代替存入数据库  

下面我们建立这张表:

models.py

class User(models.Model):
    name = models.CharField(max_length=32)
    age = models.IntegerField()
    
    choices = (
    (1,''),(2,'')     #当gender性别字段从数据库查出数字时 与其匹配对应相应的值
)
    gender = models.IntegerField(choices = choices)

 

views.py  我们在取时也需要特定的格式

obj.get_choices字段_display()

user_obj = models.User.objects.filter(pk=1).first()
print(user_obj.get_gender_display())

 

注意:当我们在此字段存入没有与choices匹配的数字时,并不会报错,而是展示出你存入的数字

 

posted @   s686编程传  阅读(523)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示