diff options
Diffstat (limited to 'lib/sqlalchemy/orm/session.py')
| -rw-r--r-- | lib/sqlalchemy/orm/session.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/sqlalchemy/orm/session.py b/lib/sqlalchemy/orm/session.py index f982da536..80c1a5b0d 100644 --- a/lib/sqlalchemy/orm/session.py +++ b/lib/sqlalchemy/orm/session.py @@ -14,14 +14,17 @@ from sqlalchemy.orm.mapper import global_extensions __all__ = ['Session', 'SessionTransaction'] -def sessionmaker(autoflush=True, transactional=True, bind=None, **kwargs): +def sessionmaker(bind=None, class_=None, autoflush=True, transactional=True, **kwargs): """Generate a Session configuration.""" kwargs['bind'] = bind kwargs['autoflush'] = autoflush kwargs['transactional'] = transactional - class Sess(Session): + if class_ is None: + class_ = Session + + class Sess(class_): def __init__(self, **local_kwargs): for k in kwargs: local_kwargs.setdefault(k, kwargs[k]) |
