[Zope-dev] SQLAlchemy (zope.sqlalchemy) integration

Michael Bayer mike_mp at zzzcomputing.com
Wed Jun 4 14:20:19 EDT 2008


On Jun 4, 2008, at 12:02 PM, Hermann Himmelbauer wrote:

> Hi,
> Regarding to the discussion some days ago with the SQLAlchemy Zope3
> integration, I still have problems with retrieving the session. I  
> currently
> use a utility for the engine, which seems to work well.
>
> However, for retrieving the session, I tried to use the following  
> pattern
> (many thanks to Michael Bayer, btw.):
>
> -------- database module -----------
> SASession = scoped_session(sessionmaker(
>    transactional = True,
>    autoflush = True,
>    extension = ZopeTransactionExtension()))
>
> def getSASession():
>    SASession.remove()
>    engine = getUtility(ISAEngineUtility).getEngine()
>    s = SASession()
>    s.bind = engine
>    return s
> --------------------------------------------
>
> In my application, I then use getSASession() to retrieve my session.
>
> However, what I think is not that beautiful is the "s.bind = engine"  
> part. Are
> there any suggestions how to improve this?


FTR, my suggestion here is to configure/tear down sessions upon  
request boundaries, as described in http://www.sqlalchemy.org/docs/04/session.html#unitofwork_contextual_lifespan 
  . 
  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.zope.org/pipermail/zope-dev/attachments/20080604/aca0dffc/attachment.html


More information about the Zope-Dev mailing list