speedup get_render_level_data

This commit is contained in:
Laura Klünder 2017-10-19 13:47:03 +02:00
parent eb370b430c
commit 03e35a019e
2 changed files with 10 additions and 5 deletions

View file

@ -45,6 +45,11 @@ class LevelGeometries:
def get_render_level_data(level):
levels = Level.objects.filter(Q(on_top_of=level.pk) | Q(base_altitude__lte=level.base_altitude))
if isinstance(level, Level):
level_pk, level_base_altitude = level.pk, level.base_altitude
else:
level_pk, level_base_altitude = Level.objects.filter(pk=level).values_list('pk', 'base_altitude')[0]
levels = Level.objects.filter(Q(on_top_of=level_pk) | Q(base_altitude__lte=level_base_altitude))
levels = levels.values_list('geoms_cache', 'default_height')
return levels