Как работать с пустыми внешними ключами в цикле for в django View
У меня есть модель, которая действует как расписание, где есть несколько отношений FK к одной и той же таблице пользователей. Все эти поля могут быть пустыми/нулевыми.
Проблема в том, что когда я делаю цикл for, я пытаюсь сопоставить пользователей на основе того, когда они появляются в определенную смену, затем добавить +1 к счетчику, чтобы получить общее количество смен для этого пользователя.
Модель выглядит следующим образом:
class WeekdayAssignment(models.Model):
    """Model definition for WeekdayAssignment."""
    start_date = models.DateField(auto_now=False, auto_now_add=False)
    end_date = models.DateField(auto_now=False, auto_now_add=False)
    triage_emea_1 = models.ForeignKey(TeamMember, on_delete=models.DO_NOTHING, related_name="triage_emea_1", blank=True, null=True)
    triage_nam_1 = models.ForeignKey(TeamMember, on_delete=models.DO_NOTHING, related_name="triage_nam_1", blank=True, null=True)
    triage_nam_2 = models.ForeignKey(TeamMember, on_delete=models.DO_NOTHING, related_name="triage_nam_2", blank=True, null=True)
    triage_nam_3 = models.ForeignKey(TeamMember, on_delete=models.DO_NOTHING, related_name="triage_nam_3", blank=True, null=True)
    ...
Как вы видите, у меня есть 4 смены сортировки, и один и тот же пользователь может работать в любой из этих смен.
Я хочу сделать цикл for, чтобы подсчитать, сколько раз пользователь находится на смене в любом из этих полей.
Не вдаваясь во все подробности того, что я делаю, я буду говорить просто, так как ошибка возникает сразу же.
Views.py
def someview(request):
    shift_users = TeamMember.objects.all()
    weekday_shifts = WeekdayAssignment.objects.all()
    for t in shift_users:
        for ws in weekday_shifts:
            print(ws.triage_nam_3)
 Пока в поле есть значение, оно будет выводиться нормально, но если поле пустое (т.е. нет пользователей, выбранных для этого поля), то произойдет сбой с TeamMember matching query does not exist.
Я пробовал делать check if None, но это дает ту же проблему. Теперь эта ошибка исчезает, когда я заполняю пользователя, но как я могу проверить, если он пуст, и просто пропустить его?
Заранее спасибо.
 Вы можете поймать models.DoesNotExist исключение.
def someview(request):
    shift_users = TeamMember.objects.all()
    weekday_shifts = WeekdayAssignment.objects.all()
    for t in shift_users:
        for ws in weekday_shifts:
            try:
                print(ws.triage_nam_3)
            except TeamMember.DoesNotExist:
                continue