yes, persistent_to_detached: http://docs.sqlalchemy.org/en/latest/orm/session_events.html#persistent-to-detached
On Tue, May 1, 2018 at 11:18 PM, Jonathan Vanasco <[email protected]> wrote: > Thanks for all this help, Mike! > > On Tuesday, May 1, 2018 at 8:56:35 PM UTC-4, Mike Bayer wrote: >> >> at what "moment in time"? I thought you might mean when they are >> expired from the Session, easy enough use the expire event >> >> http://docs.sqlalchemy.org/en/latest/orm/events.html?highlight=expire%20event#sqlalchemy.orm.events.InstanceEvents.expire >> but then you are saying "detached by their nature", as though they are >> created that way. > > > This event looks like what I need. I'll add it into my debugger's code > tomorrow! one of the `persistent_to_` events might be better... more below. > >> >> inspect(instance).expired_attributes > > > The inspector would have been a better idea. I got lazy and was just going > through the object in pdb! > >> >> but when you say "dead weakref" I think we are again getting at this >> "moment in time" you refer towards >> ... >> preserve it from....when ? when is it there? why did it go away ? > > > The debugging tool essentially decorates a web request with a > middleware-like context-wrapper like flow, then allows it to be inspected in > another browser window. The particular functionality I'm working with > stashes some ORM objects onto the request record, and a custom debugging > panel is used to audit/inspect the objects that were stashed on the request > (the last 20 requests are stored in-memory and available to the debugging > tool). 'By their inherent nature' meant everything in the debugger tool > occurred in a session that had previously ended with an explicit `close()`. > > The flow looks like this: > > * request made > * debugger wrapper starts > ** sqlalchemy session starts > *** activity > ** sqlalchemy session close() > * debugger wrapper cleanup > * debugger wrapper ends > > So I'm basically trying to access the object's state in `*** activity` prior > to `** close` > > The events look right. If I can't hack something with them, I'll just stash > a dict of the object if there is a flag for the dev environment present. > > -- > SQLAlchemy - > The Python SQL Toolkit and Object Relational Mapper > > http://www.sqlalchemy.org/ > > To post example code, please provide an MCVE: Minimal, Complete, and > Verifiable Example. See http://stackoverflow.com/help/mcve for a full > description. > --- > You received this message because you are subscribed to the Google Groups > "sqlalchemy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/sqlalchemy. > For more options, visit https://groups.google.com/d/optout. -- SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper http://www.sqlalchemy.org/ To post example code, please provide an MCVE: Minimal, Complete, and Verifiable Example. See http://stackoverflow.com/help/mcve for a full description. --- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.
