检查匹配查询是否不存在返回空字符串

时间:2018-11-25 01:41:20

标签: python django django-queryset

当我尝试检查对象是否存在时,将其返回到excel文件中 如果不返回,则为空的“字符串” 但我在if句子

中有错误
pkg = Package.objects.get(pk=pk)
price_date_all = PackagePricesAndDates.objects.filter(package=pkg)

if price_date_all.get(territory=ter.pk).sales:
   list.append(str(price_date_all.get(territory=ter.pk).sales))
else :
   list.append('')

1 个答案:

答案 0 :(得分:0)

在查询集上使用get时,它将返回记录或引发DoesNotExist异常。

try:
    list.append(str(price_date_all.get(territory=ter.pk).sales))
except DoesNotExist:
    list.append('')

FWIW,您应该重命名list变量,因为它已经绑定到list内置方法中,用于创建列表。不要重复使用已经存在的名称