From c48d25cf7cf11dbe572f82ae16c6e37ce1ee3dcf Mon Sep 17 00:00:00 2001 From: Timm Fitschen <t.fitschen@indiscale.com> Date: Fri, 4 Dec 2020 02:03:17 +0100 Subject: [PATCH] WIP: fix sorting --- djaosdb/caosdb_client.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/djaosdb/caosdb_client.py b/djaosdb/caosdb_client.py index 8633e05..3b16415 100644 --- a/djaosdb/caosdb_client.py +++ b/djaosdb/caosdb_client.py @@ -42,13 +42,17 @@ class FindResult(Result): upper = (skip + limit if skip is not None and limit is not None else limit) - if sort: - rows.sort(key=lambda x: x[sort[0][0]], reverse=sort[0][1] < 0) + if columns is not None: - self._results = [] - for row in rows[skip:upper]: - self._results.append(dict(zip(columns, row))) + if sort: + named_columns = [dict(zip(columns, row)) for row in rows] + named_columns.sort(key=lambda x: x[sort[0][0]], reverse=sort[0][1] < 0) + self._results = named_columns[skip:upper] + else: + self._results = [] + for row in rows[skip:upper]: + self._results.append(dict(zip(columns, row))) else: self._results=rows -- GitLab