我是django的新手。我需要檢查查詢集是否返回任何值,如果不是,則跳到循環中的下一個項目。我試圖嘗試..除了ObjectDoesNotExist和那不工作。如果過濾器找不到任何東西,它會返回什麼?我如何檢查它?django - 檢查過濾器是否返回查詢集中的任何東西
這裏的現有代碼:
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
難道你不認爲他必須擊中數據庫兩次,一次計數,然後如果計數> 0,第二次檢索所需的記錄?據他所知,他根本不需要try ... except block,並且按照Timmy的說法。 –