当出现特定错误时,我想从sqlalchemy查询(ORM)中记录完整行(在我的示例中,这是找到多个行的时候,但这与问题无关)。 此刻,我在每一列上都这样写。
try:
result = query.one_or_none()
except MultipleResultsFound:
self.logger.info('MultipleResultsFound!!')
for row in query.all():
self.logger.info('column1:{}, column2:{}, column3:{}'.
format(row.column1, row.column2, row.column3))
但是必须有一种更好的方法,而无需处理每一列以显示日志中的每一列。 如何使用一个简单的命令显示一行中的所有列?
答案 0 :(得分:0)
尝试this方法
还请注意,您可以使用.label在查询中命名您的函数。
例如db.session.query(func.sum(SomeModel.something).label('total'))
for row in query.all():
print(row._asdict())