choices参数

使用场景

  只要某个字段的可能性是可以列举完全的,那么一般情况下都会采用choices参数

代码演示

class User(models.Model):
    username = models.CharField(max_length=32)
    age = models.IntegerField()
    # 性别
    gender_choices = (
        (1,''),
        (2,''),
        (3,'其他'),
    )
    gender = models.IntegerField(choices=gender_choices)

存值

  存的时候 没有列举出来的数字也能存(范围还是按照字段类型决定)

取值

  只要是choices参数的字段 如果你想要获取对应信息 固定写法 get_字段名_display()

  如果没有对应关系 那么字段是什么还是展示什么(即gender字段存的数字不在上述元祖列举的范围内容)

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

 

posted @ 2022-03-15 20:38  那就凑个整吧  阅读(38)  评论(0编辑  收藏  举报