diff options
| author | Alban Gruin | 2017-11-18 16:04:28 +0100 | 
|---|---|---|
| committer | Alban Gruin | 2017-11-27 12:11:30 +0100 | 
| commit | 1046a9ea68d9a29dc929eb88581e50a0704a5142 (patch) | |
| tree | 7a35c017ce0b0d98f859a99c4bef6dd5025b84b1 | |
| parent | 599ca85167ad7d53f6434b105cb74c761d994ecf (diff) | |
Optimisation (?) de la requête des emplois du temps des salles
| -rw-r--r-- | views.py | 9 | 
1 files changed, 5 insertions, 4 deletions
@@ -103,12 +103,13 @@ def rooms(request):      # Récupération des salles et de toutes les semaines où elles sont      # concernées -    # Cette requête est un peu lente sur sqlite… j’espère que ce sera mieux -    # sur la base de prod. +    # Cette requête est un peu lente sur sqlite… +    # Par contre c’est beaucoup plus rapide sur PostgreSQL      rooms = Room.objects.filter(course__begin__gte=start, course__begin__lt=end) \ +                        .order_by("name") \                          .annotate(year=ExtractYear("course__begin"), -                                  week=ExtractWeek("course__begin")) \ -                        .order_by("name").annotate(c=Count("*")) +                                  week=ExtractWeek("course__begin"), +                                  c=Count("*"))      rooms_weeks = []      for room in rooms:  | 
