Django:如何允许空值

标签 django

我有以下 Django 模型:

from django.db import models
class AlertCalendar(models.Model):
    alert_calendar_id = models.UUIDField(primary_key=True, default=uuid.uuid4, blank=True, editable=False)
    start_time = models.TimeField(null=True, blank=True)
    end_time = models.TimeField(null=True, blank=True)
    start_date = models.DateField(null=True, blank=True)
    end_date = models.DateField(null=True, blank=True)

我想创建此模型的一个实例,其中除 id 之外的所有字段都设置为 null,但当我尝试这样做时,出现以下错误:

{
    "start_time": [
        "This field may not be null."
    ],
    "end_time": [
        "This field may not be null."
    ],
    "start_date": [
        "This field may not be null."
    ],
    "end_date": [
        "This field may not be null."
    ]
}

当这些值中只有一个设置为 null 时也会出现这种情况,但我同时使用 null=Trueblank=True 定义了字段,那么为什么我不能创建这个实例呢?

最佳答案

为每个字段分配 None 以创建具有空值的实例。

AlertCalendar.objects.create(start_time = None, end_time = None, start_date = None, end_date = None) 

这将创建一个指定字段为 null 的实例

关于Django:如何允许空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56496905/

相关文章:

python - 在 django 中给出两个选择而不创建另一个类和外键

python - 未解析的属性引用 'objects'

python - 如何从 django 中的 form_valid 函数重定向到无效表单

javascript - Ajax Form 和 Django 集成发布错误

python - 使用 docker-compose 初始化 django 应用程序

javascript - Django 引导日期时间选择器

python - Django F 表达式加入字段

django - 基于 ForeignKey 对象从模型中获取对象

python - 如何在 Django 中模拟邮件列表?

python - django.setup() 的目的是什么?