diff --git a/djaosdb/caosdb_client.py b/djaosdb/caosdb_client.py index 3b16415163a0d4a95c508a8997c1762206cde0e5..b3cd64384525ca067a194ec7c11bff1faef218ca 100644 --- a/djaosdb/caosdb_client.py +++ b/djaosdb/caosdb_client.py @@ -34,6 +34,9 @@ class CountResult(Result): def __iter__(self): return iter(self._results) +def _sort_key(x, field): + return x[field] or "" + class FindResult(Result): def __init__(self, rows, columns, sort=None, limit=None, skip=None): @@ -47,7 +50,7 @@ class FindResult(Result): if columns is not None: 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) + named_columns.sort(key=lambda x: _sort_key(x, sort[0][0]), reverse=sort[0][1] < 0) self._results = named_columns[skip:upper] else: self._results = []