检查查询是否返回任何结果时,推荐的习惯用法是什么?
示例:
orgs = Organisation.objects.filter(name__iexact = 'Fjuk inc')
# If any results
# Do this with the results without querying again.
# Else, do something else...
我想有几种不同的方法来检查这一点,但我想知道一个有经验的Django用户会如何做。文档中的大多数示例都忽略了什么都没有找到的情况……
发布于 2009-09-07 05:53:34
if not orgs:
# Do this...
else:
# Do that...
发布于 2015-04-20 21:56:51
检查查询集是否为空:
if orgs.exists():
# Do something
或者,您可以检查查询集中的第一项,如果它不存在,将返回None
if orgs.first():
# Do something
发布于 2009-09-07 06:01:58
最有效的方式(在django 1.2之前)是:
if orgs.count() == 0:
# no results
else:
# alrigh! let's continue...
https://stackoverflow.com/questions/1387727
复制相似问题