在sqlalchemy中,如何检查会话中是否附加了模型?

时间:2012-03-16 03:47:16

标签: python sqlalchemy

在sqlalchemy中,如何检查会话中是否附加了一个模型对象? 以及如何获得一个模型对象的附加会话。

2 个答案:

答案 0 :(得分:7)

要回答第一个问题,如果对象附加到会话,您可以使用:

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

答案 1 :(得分:5)

会话未附加任何模型,而是附加到模型的对象。您将在object_session方法的帮助下从对象获取附加的会话。