首页 > 解决方案 > 如何使用 Column 对象获取/设置 SqlAlchemy 查询值

问题描述

为了使一些代码更通用,我尝试使用 Column 对象检索/设置数据库行中的值。

例如,我将进行以下设置:

col = MyTable.MyColumn
result = session.query(...).one()

现在我想获取/设置值,语义如下:

cur_value = result[col]
result[col] = new_value

使用 Column 对象在结果中获取/设置值的正确语法是什么?

col不会是静态值,而是从地图中动态获取。

标签: pythonsqlalchemy

解决方案


你可以这样做:

cur_value = getattr(result, col.key)
setattr(result, col.key, new_value)

推荐阅读