这里有两个问题。
如果我运行这样的sqlalchemy查询:
sensors = session.query(Sensor).filter(Sensor.serial_number.in_(data['sensor_serial_numbers'])).all()
然后我可以使用结果集(传感器)更新所有这些行中的列吗?我想不出它的语法,所以我试着这样做:
session.query(Sensor).filter(Sensor.serial_number.in_(data['sensor_serial_numbers'])).update({'system_id': system.id})
但这在sqlalchemy的碗里失败了:
File "/home/ecovent/pyenv0.3/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 949, in _do_pre_synchronize
"Could not evaluate current criteria in Python. "
InvalidRequestError: Could not evaluate current criteria in Python. Specify 'fetch' or False for the synchronize_session parameter.
我想这一定是因为in_u子句,就像我在使用同一个构造之前所做的更新一样,但是它们没有in_u子句。我该如何用in_u来做这样的更新?
试试这个:
这里有记载:doc
默认值是
evaluate
,其中相关问题 更多 >
编程相关推荐