aboutsummaryrefslogtreecommitdiff
path: root/wqflask/db/call.py
diff options
context:
space:
mode:
authorPjotr Prins2016-06-23 06:17:27 +0000
committerPjotr Prins2016-06-23 06:17:27 +0000
commit5e4c967ded2c4146af261914dc30c7e03d575c2b (patch)
treef207d5ca5a5f000f5e99126e7bbe2148327017bf /wqflask/db/call.py
parent2e8351ee52a67bf7dfee7d323458b3fa80cacf41 (diff)
downloadgenenetwork2-5e4c967ded2c4146af261914dc30c7e03d575c2b.tar.gz
DB: created fetch1 function which can do both SQL and GN_SERVER
Diffstat (limited to 'wqflask/db/call.py')
-rw-r--r--wqflask/db/call.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/wqflask/db/call.py b/wqflask/db/call.py
index 6b15abb3..ba6eb149 100644
--- a/wqflask/db/call.py
+++ b/wqflask/db/call.py
@@ -15,6 +15,21 @@ logger = getLogger(__name__ )
from inspect import stack
+def fetch1(query, path=None, func=None):
+ """Fetch one result using either a SQL query or the URI path to
+GN_SERVER (when USE_GN_SERVER is True). Apply func to GN_SERVER result
+when set.
+
+ """
+ if USE_GN_SERVER and path:
+ result = gn_server(path)
+ if func != None:
+ return [func(result)]
+ else:
+ return [result]
+ else:
+ return fetchone(query)
+
def fetchone(query):
"""Return tuple containing one row by calling SQL directly
@@ -23,7 +38,7 @@ def fetchone(query):
def helper(query):
res = g.db.execute(query)
return res.fetchone()
- callername = stack()[1][3]
+ callername = stack()[2][3]
return logger.sql(callername, query, helper)
def gn_server(path):