diff options
| -rw-r--r-- | src-py/db_controller.py | 4 | ||||
| -rw-r--r-- | src-py/neo4j_util.py | 11 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src-py/db_controller.py b/src-py/db_controller.py index 3969a2bb..32d5a436 100644 --- a/src-py/db_controller.py +++ b/src-py/db_controller.py @@ -9,6 +9,7 @@ import traceback import urllib2 import neo4j_util as dbu +from neo4j_util import DB_result_set log = logging.getLogger('rhizi') @@ -50,7 +51,8 @@ class DB_op(object): i = 0 if self.result_set: for s in self.statement_set: - yield (i, s, self.result_set[i]) + rs = DB_result_set(self.result_set[i]) + yield (i, s, rs) i = i + 1 else: for s in self.statement_set: diff --git a/src-py/neo4j_util.py b/src-py/neo4j_util.py index 6b78dc18..7c228dea 100644 --- a/src-py/neo4j_util.py +++ b/src-py/neo4j_util.py @@ -7,6 +7,17 @@ import urllib2 import model import string +class DB_result_set(object): + def __init__(self, data): + self.data = data + + def __iter__(self): + for db_row_dict in self.data['data']: + # example: dict: {u'row': [{u'title': u'foo'}]} + assert None != db_row_dict['row'][0] + + yield db_row_dict['row'][0] + class Cypher_String_Formatter(string.Formatter): """ Despite parameter support in Cypher, we sometimes do engage in query string building |
