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 异常
