diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-07-11 23:38:14 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-08-13 18:26:03 +0200 |
commit | a5593d66ea541dfbcd2597f81dcbc51965c51cfc (patch) | |
tree | e778fa93380d0244bfd8d115143996bad51612aa /ishtar_common/views_item.py | |
parent | 05495e0b37da09deb7b7d2e5629112a046042836 (diff) | |
download | Ishtar-a5593d66ea541dfbcd2597f81dcbc51965c51cfc.tar.bz2 Ishtar-a5593d66ea541dfbcd2597f81dcbc51965c51cfc.zip |
Manage alerts
Diffstat (limited to 'ishtar_common/views_item.py')
-rw-r--r-- | ishtar_common/views_item.py | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index 854c91ce5..85ef5339a 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -12,7 +12,6 @@ from tempfile import NamedTemporaryFile from django.conf import settings from django.contrib.gis.geos import GEOSException -from django.contrib.postgres.search import SearchQuery from django.contrib.staticfiles.templatetags.staticfiles import static from django.core.exceptions import ObjectDoesNotExist from django.core.urlresolvers import reverse, NoReverseMatch @@ -821,14 +820,22 @@ def get_item(model, func_name, default_name, extra_request_keys=[], (hasattr(field, 'rel') and field.rel and '__pk' or '')) for field in associated_fields])) request_keys.update(my_extra_request_keys) - request_items = request.method == 'POST' and request.POST \ - or request.GET + + if "query" in dct: + request_items = dct["query"] + elif request.method == 'POST': + request_items = request.POST + else: + request_items = request.GET + + count = dct.get('count', False) # pager try: row_nb = int(request_items.get('length')) except (ValueError, TypeError): row_nb = DEFAULT_ROW_NUMBER + dct_request_items = {} # filter requested fields @@ -839,6 +846,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[], if key.startswith('searchprefix_'): key = key[len('searchprefix_'):] dct_request_items[key] = request_items[k] + request_items = dct_request_items dct = my_base_request @@ -985,6 +993,9 @@ def get_item(model, func_name, default_name, extra_request_keys=[], items = items.extra(**extra) items = items.distinct() + + if count: + return items.count() # print(items.query) if search_vector: # for serialization |