私は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