我想从我的会话中分离一个类的实例,但它应该仍然可以读取(不发出查询)。我已经浏览了好几天的文档,但是我尝试的每种方法都会导致消息
DetachedInstanceError: Instance <MyModel at 0x36bb190> is not bound to a Session;
attribute refresh operation cannot proceed
我正在与zope.sqlalchemy
Pyramid 的事务管理器一起工作。我希望我的对象在事务提交后可用。我只需要它来读取“缓存”值,即事务提交之前其中的值。
我能找到的唯一可能的解决方案是包装类(或属性本身),然后手动跟踪更改(我可以这样做,但它真的很难看,而且根本不是 Pythonic)。
有没有办法阻止 SQLAlchemy 尝试刷新这些值?
作为后备,我什至愿意只返回None
,只要在事务提交后没有抛出上述错误