首页 > 解决方案 > 仅当 django ORM 中的值不是 None 时才包含条件

问题描述

只有当值不是时,我才想在django ORM's方法中包含一个条件。现在我正在使用并创建两个单独的数据库查询。是否可以组合这些查询并立即执行?.objects.getNoneif/else

我在做什么:

if may_none_value:
    objects = MyModel.objects.get(field1=other_value, field2=may_none_value)
else:
    objects = MyModel.objects.get(field1=other_value)

标签: pythondjangodjango-orm

解决方案


你可以试试这个

if may_none_value:
    conditions = {'field1': 'other_value'}
else:
    conditions = {}

objects = MyModel.objects.get(**conditions)

推荐阅读