From 674a8c43fc24cd75b2230aff856e40fed16a91a9 Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Fri, 30 Aug 2019 13:31:02 +0200 Subject: [PATCH] Add ordering to models. Advances BiscuIT-ng#54. --- biscuit/apps/chronos/models.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/biscuit/apps/chronos/models.py b/biscuit/apps/chronos/models.py index 6da90f9f..fc9127f3 100644 --- a/biscuit/apps/chronos/models.py +++ b/biscuit/apps/chronos/models.py @@ -42,6 +42,7 @@ class TimePeriod(models.Model): class Meta: unique_together = [['weekday', 'period']] + ordering = ['weekday', 'period'] class Subject(models.Model): @@ -58,6 +59,9 @@ class Subject(models.Model): def __str__(self) -> str: return '%s - %s' % (self.abbrev, self.name) + class Meta: + ordering = ['name', 'abbrev'] + class Room(models.Model): short_name = models.CharField(verbose_name=_( @@ -68,6 +72,9 @@ class Room(models.Model): def __str__(self) -> str: return '%s (%s)' % (self.name, self.short_name) + class Meta: + ordering = ['name', 'short_name'] + class Lesson(models.Model): subject = models.ForeignKey( @@ -82,6 +89,10 @@ class Lesson(models.Model): date_end = models.DateField(verbose_name=_( 'Effective end date of lesson'), null=True) + class Meta: + ordering = ['date_start'] + + class LessonSubstitution(models.Model): week = models.IntegerField(verbose_name=_('Week'), default=current_week) @@ -96,6 +107,9 @@ class LessonSubstitution(models.Model): related_name='lesson_substitutions') room = models.ForeignKey('Room', models.CASCADE, null=True) + class Meta: + ordering = ['lesson_period__lesson__date_start', 'week', 'lesson_period__period__weekday', 'lesson_period__period__period'] + class LessonPeriod(models.Model): lesson = models.ForeignKey('Lesson', models.CASCADE, related_name='lesson_periods') @@ -127,3 +141,6 @@ class LessonPeriod(models.Model): def get_groups(self) -> models.query.QuerySet: return self.lesson.groups + + class Meta: + ordering = ['lesson__date_start', 'period__weekday', 'period__period'] -- GitLab