From 8e2138793d147a832d53a829815bdae7292fb088 Mon Sep 17 00:00:00 2001 From: Alban Gruin Date: Tue, 7 Nov 2017 19:41:48 +0100 Subject: Un sous-groupe nul fait crasher la page des emplois du temps car la requête pour savoir si il y a des sous-groupes ne marche pas avec une chaîne de caractère commençant par None. Suppression de la possibilité d’avoir un sous-groupe nul, valeur par défaut à "". --- models.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/models.py b/models.py index 3af1c06..0804a38 100644 --- a/models.py +++ b/models.py @@ -71,7 +71,7 @@ class Timetable(SlugModel): class GroupManager(Manager): def get_parents(self, group): - groups_criteria = Q(subgroup__isnull=True) | Q(subgroup__startswith=group.subgroup) | \ + groups_criteria = Q(subgroup="") | Q(subgroup__startswith=group.subgroup) | \ reduce(lambda x, y: x | y, [Q(subgroup=group.subgroup[:i]) for i in range(1, len(group.subgroup) + 1)]) @@ -99,8 +99,7 @@ class Group(models.Model): verbose_name="emploi du temps") mention = models.CharField(max_length=128) - subgroup = models.CharField(max_length=16, verbose_name="sous-groupe", - null=True) + subgroup = models.CharField(max_length=16, verbose_name="sous-groupe", default="") slug = models.SlugField(max_length=64, default="") @@ -129,6 +128,9 @@ class Group(models.Model): self.slug = slugify(self.name) self.mention, self.subgroup = parse_group(self.name) + if self.subgroup is None: + self.subgroup = "" + super(Group, self).save() -- cgit v1.2.1