在 Django 模型中,可以使用 models.IntegerField
的 default
参数来设置默认值,而不是将 NULL 视为 '0'。例如,如果您想要将默认值设置为 0,可以这样做:
from django.db import models
class MyModel(models.Model):
my_field = models.IntegerField(default=0)
这将确保在创建新的 MyModel
实例时,my_field
字段的默认值为 0。如果您需要将 NULL 值视为 0,则可以在查询数据库时使用 Coalesce
函数。例如,假设您有一个名为 MyModel
的模型,其中包含一个名为 my_field
的整数字段,您可以使用以下查询来将 NULL 值视为 0:
from django.db.models import Coalesce, Value
from myapp.models import MyModel
MyModel.objects.annotate(my_field_coalesced=Coalesce('my_field', Value(0)))
这将返回一个查询集,其中 my_field_coalesced
字段将包含 my_field
的值,如果该值为 NULL,则将其视为 0。
领取专属 10元无门槛券
手把手带您无忧上云