diff --git a/CHANGELOG.rst b/CHANGELOG.rst index eed15b70b9b58414166bc21b9d35c8029cbab37b..7323636367244d66302d72035b36f3e40160a7ff 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -14,6 +14,7 @@ Fixed * Migration path was ambigious * Unique constraints for breaks and substitutions were too tight +* Absences in substitutions list were displayed multiple times. `2.0b0`_ - 2021-05-21 --------------------- diff --git a/aleksis/apps/chronos/managers.py b/aleksis/apps/chronos/managers.py index 303a22032683c5e1c74647e39c1c64801885c3f5..82021ef495791e24b525cfcbe9e5f8390fd3283b 100644 --- a/aleksis/apps/chronos/managers.py +++ b/aleksis/apps/chronos/managers.py @@ -600,13 +600,13 @@ class AbsenceQuerySet(DateRangeQuerySetMixin, SchoolTermRelatedQuerySet): """QuerySet with custom query methods for absences.""" def absent_teachers(self): - return Person.objects.filter(absences__in=self).order_by("short_name") + return Person.objects.filter(absences__in=self).distinct().order_by("short_name") def absent_groups(self): - return Group.objects.filter(absences__in=self).order_by("short_name") + return Group.objects.filter(absences__in=self).distinct().order_by("short_name") def absent_rooms(self): - return Person.objects.filter(absences__in=self).order_by("short_name") + return Person.objects.filter(absences__in=self).distinct().order_by("short_name") class HolidayQuerySet(QuerySet, DateRangeQuerySetMixin):