This commit is contained in:
mwiegand 2022-06-01 18:07:43 +02:00
parent eefd4272ff
commit 42f2a718ec
2 changed files with 12 additions and 15 deletions

View file

@ -5,18 +5,16 @@ from flask import Flask, request
from subprocess import check_output from subprocess import check_output
import json import json
from .pg import query from .pg import query, select
app = Flask(__name__) app = Flask(__name__)
@app.route('/') @app.route('/')
def home(): def home():
r = query( return str('RESULTS:', select(
''' '''
SELECT * FROM messages SELECT * FROM messages
ORDER BY date
LIMIT 10
''' '''
) ))
for row in r.rows:
print(row)
return str('RESULTS:', r.rowcount)

View file

@ -7,6 +7,7 @@ from flask import g
def db(): def db():
if not hasattr(g, 'db_connection'): if not hasattr(g, 'db_connection'):
g.db_connection = pg8000.connect( g.db_connection = pg8000.connect(
host=environ['DB_HOST'],
database=environ['DB_NAME'], database=environ['DB_NAME'],
user=environ['DB_USER'], user=environ['DB_USER'],
password=environ['DB_PASSWORD'], password=environ['DB_PASSWORD'],
@ -20,14 +21,12 @@ def query(query, **params):
cursor.paramstyle = "named" cursor.paramstyle = "named"
cursor.execute(query, params) cursor.execute(query, params)
db().commit() db().commit()
return cursor
columns = [x[0] for x in cursor.description]
rows = [dict(zip(columns, row)) for row in cursor.fetchall()]
return DBResult(
rows=rows,
rowcount=cursor.rowcount,
)
except: except:
db().rollback() db().rollback()
raise raise
def select(query, **params):
cursor = query(query, **params)
columns = [x[0] for x in cursor.description]
return [dict(zip(columns, row)) for row in cursor.fetchall()]