X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-database.git/blobdiff_plain/660cc7e978be22c81752dd814aa21d9f56586e46..refs/heads/glasgall-dev:/python/database/models.py?ds=sidebyside diff --git a/python/database/models.py b/python/database/models.py index 236598a..d4f2694 100644 --- a/python/database/models.py +++ b/python/database/models.py @@ -16,6 +16,7 @@ def session_mapper(scoped_session): def __init__(self, **kwargs): for key, value in kwargs.items(): setattr(self, key, value) + scoped_session.add(self) cls.__init__ = __init__ cls.query = scoped_session.query_property() return sqla_mapper(cls, *arg, **kw) @@ -51,7 +52,7 @@ __all__ = ['meta', ] meta = ThreadLocalMetaData() -session = orm.scoped_session(orm.sessionmaker(transactional=False, autoflush=False)) +session = orm.scoped_session(orm.sessionmaker(autocommit=True, autoflush=False)) machine_table = Table('machines', meta, Column('machine_id', Integer, primary_key=True, nullable=False), @@ -190,4 +191,4 @@ def clear_cache(): """Clear sqlalchemy's cache """ - session.clear() + session.expunge_all()