From b1a03e9a8fc888a53dac7784f8733477f04c0ee4 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 14 Feb 2019 05:04:32 +0100 Subject: Query optimization for JSON dynamic fields --- ishtar_common/models.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'ishtar_common/models.py') diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 962fc93a1..8c421bac7 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -1276,9 +1276,9 @@ class JsonData(models.Model, CachedGen): return value choices = set() splitted_key = key[len('data__'):].split('__') - for obj in cls.objects.filter( - data__has_key=key[len('data__'):]).values("data").all(): - value = obj['data'] + q = cls.objects.filter( + data__has_key=key[len('data__'):]).values_list('data', flat=True) + for value in q.all(): for k in splitted_key: value = value[k] choices.add(value) -- cgit v1.2.3