Hi all, Can anyone explain to me how to correctly create sessions in web applications?
The documentation gives an example with a scoped_session: from sqlalchemy.orm import scoped_session, sessionmaker Session = scoped_session(sessionmaker()) Okay, I should wrap the "thing" returned by sessionmaker() in scoped_session(). But do I later still have to construct Session() by doing this: session = Session() I did some experiments and I don't get it. Here is the code I tried: >>> from app.models import Page >>> >>> Session = sessionmaker(bind=engine, autoflush=True, autocommit=False) >>> session = scoped_session(Session) >>> >>> session <sqlalchemy.orm.scoping.ScopedSession object at 0x848eb8c> >>> session() <sqlalchemy.orm.session.Session object at 0x83fe08c> >>> session.query(Page).count() 211L >>> session().query(Page).count() 211L Both work identically, but I don't understand the difference. Can anyone explain it please? Also when do I have to call remove() method that is mentioned in documentation? Thanks, Peteris Krumins -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalch...@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.