Skip to content
Snippets Groups Projects
Verified Commit a0b5c8c3 authored by Timm Fitschen's avatar Timm Fitschen
Browse files

WIP: sorting

parent c48d25cf
No related branches found
No related tags found
No related merge requests found
...@@ -34,6 +34,9 @@ class CountResult(Result): ...@@ -34,6 +34,9 @@ class CountResult(Result):
def __iter__(self): def __iter__(self):
return iter(self._results) return iter(self._results)
def _sort_key(x, field):
return x[field] or ""
class FindResult(Result): class FindResult(Result):
def __init__(self, rows, columns, sort=None, limit=None, skip=None): def __init__(self, rows, columns, sort=None, limit=None, skip=None):
...@@ -47,7 +50,7 @@ class FindResult(Result): ...@@ -47,7 +50,7 @@ class FindResult(Result):
if columns is not None: if columns is not None:
if sort: if sort:
named_columns = [dict(zip(columns, row)) for row in rows] 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) named_columns.sort(key=lambda x: _sort_key(x, sort[0][0]), reverse=sort[0][1] < 0)
self._results = named_columns[skip:upper] self._results = named_columns[skip:upper]
else: else:
self._results = [] self._results = []
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment