将自定义结果值添加到sqlalchemy查询

时间:2017-10-31 11:39:41

标签: python sqlalchemy flask-sqlalchemy

我在烧瓶应用程序中有一个sqlalchemy查询,如

results = db.session.query(
 Data.id.label('id'),
 Data.timestamp.label('timestamp'),
 ...
).all()

我要添加一个字符串值。有没有办法在查询中添加它,比如

results = db.session.query(
 Data.id.label('id'),
 Data.timestamp.label('timestamp'),
 'foo'.label('bar')
).all()

我目前的解决方案是遍历所有结果,将它们转换为dicts并添加字符串

results_ = []
for r in results:
 r_ = {}
 for k in result.keys():
  r_[k] = r[k]
 r_['bar'] = 'foo'
 results_.append(r_)

但它似乎不像这样做的pythonic方式。

解决方案:

results = db.session.query(
 Data.id.label('id'),
 Data.timestamp.label('timestamp'),
 literal('foo').label('bar')
).all()

0 个答案:

没有答案
相关问题