欢迎访问宙启技术站
智能推送

Python中使用SmallIntegerField()定义存储小型整数的字段类型

发布时间:2023-12-25 16:31:56

在Python中,可以使用SmallIntegerField()来定义存储小型整数的字段类型。SmallIntegerField()models模块中的一个类,它继承自IntegerField()类,并且规定了字段值的范围为小于等于32767。

以下是一个使用SmallIntegerField()的简单例子:

from django.db import models

class Person(models.Model):
    age = models.SmallIntegerField()

    def __str__(self):
        return f"Person {self.id}: {self.age}"

在上述例子中,我们定义了一个Person模型,包含了一个age字段。该字段存储一个小型整数,其取值范围在-32768到32767之间。

我们可以使用以下代码创建并保存一个Person对象:

p = Person(age=25)
p.save()

我们也可以查询并读取一个Person对象的age属性:

p = Person.objects.get(id=1)
print(p.age)

需要注意的是,SmallIntegerField()只能存储小型整数,如果尝试存储大型整数(超过32767),将会引发ValidationError异常。

p = Person(age=50000)  # 抛出 ValidationError 异常