0
Я пытаюсь использовать func
в инструкции по обновлению, но я получаю ошибку InvalidRequest (stacktrace ниже). Вот код:SQLAlchemy ORM: Использование func в обновлении
session.query(C).filter(
z == True,
).update({
C.x: func.sqrt((C.y1 + C.y2) * 0.675)
})
И вот StackTrace:
File "/var/xxx/vagrant-env/local/lib/python2.7/site-packages/sqlalchemy/orm/query.py", line 3288, in update
update_op.exec_()
File "/var/xxx/vagrant-env/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 1167, in exec_
self._do_pre_synchronize()
File "/var/xxx/vagrant-env/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 1236, in _do_pre_synchronize
"Could not evaluate current criteria in Python. "
sqlalchemy.exc.InvalidRequestError: Could not evaluate current criteria in Python. Specify 'fetch' or False for the synchronize_session parameter.
Я попытался с обоих func.sqrt
и func.round
, но они оба дают вышеуказанную ошибку. Любые мысли о том, что я делаю неправильно?
Это сработало, спасибо большое! – user2449397