在sqlalchemy中,如何检查会话中是否附加了模型的一个对象?以及如何获得一个模型对象的附加会话。
会话不附加任何模型,而是附加到模型的对象。您将在object_session方法的帮助下从对象获取附加的会话。
object_session
要回答第一个问题,如果对象附加到会话,您可以使用:
print(obj in DBSession)
或者使用inspect:
from sqlalchemy import inspect print(not inspect(obj).detached)
另见:http://docs.sqlalchemy.org/en/latest/orm/session_state_management.html#getting-the-current-state-of-an-object