From ae59fd7c58495cccb2eeb0fef37923b3a6015f13 Mon Sep 17 00:00:00 2001 From: Aradhya Date: Fri, 19 Nov 2021 22:58:32 +0530 Subject: [PATCH] feat: added no_order to execute --- frappe/database/database.py | 10 +++++++--- frappe/model/db_query.py | 6 +++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/frappe/database/database.py b/frappe/database/database.py index 6703ae0ff3..6de8c9e72a 100644 --- a/frappe/database/database.py +++ b/frappe/database/database.py @@ -395,7 +395,6 @@ class Database(object): return self.value_cache[(doctype, filters, fieldname)] if isinstance(filters, list): - order_by = order_by or "modified_desc" out = self._get_value_for_many_names(doctype, filters, fieldname, debug=debug, run=run, **kwargs) else: @@ -571,10 +570,15 @@ class Database(object): def _get_value_for_many_names(self, doctype, names, field, debug=False, run=True, **kwargs): names = list(filter(None, names)) if names: - return self.get_all(doctype, + return self.get_all( + doctype, fields=field, filters=names, - debug=debug, as_list=1, run=run) + debug=debug, + as_list=1, + run=run, + **kwargs, + ) else: return {} diff --git a/frappe/model/db_query.py b/frappe/model/db_query.py index 6181832363..a6c502d129 100644 --- a/frappe/model/db_query.py +++ b/frappe/model/db_query.py @@ -35,7 +35,7 @@ class DatabaseQuery(object): join='left join', distinct=False, start=None, page_length=None, limit=None, ignore_ifnull=False, save_user_settings=False, save_user_settings_fields=False, update=None, add_total_row=None, user_settings=None, reference_doctype=None, - run=True, strict=True, pluck=None, ignore_ddl=False, parent_doctype=None) -> List: + run=True, strict=True, pluck=None, ignore_ddl=False, parent_doctype=None, no_order=False) -> List: if not ignore_permissions and \ not frappe.has_permission(self.doctype, "select", user=user, parent_doctype=parent_doctype) and \ not frappe.has_permission(self.doctype, "read", user=user, parent_doctype=parent_doctype): @@ -90,6 +90,7 @@ class DatabaseQuery(object): self.run = run self.strict = strict self.ignore_ddl = ignore_ddl + self.no_order = no_order # for contextual user permission check # to determine which user permission is applicable on link field of specific doctype @@ -128,6 +129,9 @@ class DatabaseQuery(object): args.fields = 'distinct ' + args.fields args.order_by = '' # TODO: recheck for alternative + if self.no_order: + args.order_by = "" + query = """select %(fields)s from %(tables)s %(conditions)s