Django 如果数据与现有数据冲突,则无法将其插入数据库

Django 如果数据与现有数据冲突,则无法将其插入数据库,django,Django,如果数据与我的数据库中已经存在的其他数据冲突,我希望无法将数据插入到我的数据库中。我的意思是: 假设我想在数据库字段start\u date和end\u date中插入以下条件: -期间(开始日期;结束日期)不能与我的基础中的任何其他期间相交 在django有什么好的、快捷的检查方法吗 可能我可以手动迭代整个数据库,但可能有好的包装吗?我建议执行以下操作: lower = Entry.objects.filter(start_date__lte=new_start) lower = lower.

如果数据与我的数据库中已经存在的其他数据冲突,我希望无法将数据插入到我的数据库中。我的意思是:

假设我想在数据库字段
start\u date
end\u date
中插入以下条件:

-期间
(开始日期;结束日期)
不能与我的基础中的任何其他期间相交

在django有什么好的、快捷的检查方法吗


可能我可以手动迭代整个数据库,但可能有好的包装吗?

我建议执行以下操作:

lower = Entry.objects.filter(start_date__lte=new_start)
lower = lower.filter(end_date_gte=new_start)

upper = Entry.objects.filter(start_date__lte=new_end)
upper = upper.filter(end_date_gte=new_end)

valid = len(lower) == 0 and len(upper) == 0

if valid:
    # Do the insert
    pass

是否希望单个字段具有唯一性,例如:如果已存在具有特定名称的
公司
,则不允许插入另一个具有相同名称的
公司