我是 Django 的新手。我需要检查查询集是否返回任何值,如果没有,则跳到循环中的下一项。我试过尝试.. 除了 ObjectDoesNotExist 并且那不起作用。如果过滤器没有找到任何东西,它会返回什么?我如何检查它?
这是现有的代码:
def assign_family_riders(leg):
remaining_leg_riders = list(leg.riders.all())
for car in CarAssignment.objects.filter(leg=leg):
driver_family = car.driver.family
try:
riders = leg.riders.all().filter(family=driver_family)
except ObjectDoesNotExist:
continue
for rider in riders:
car.riders.add(rider)
remaining_leg_riders.remove(rider)
return remaining_leg_riders