Files
@ 1ec67ddcaffe
Branch filter:
Location: kallithea/rhodecode/model/meta.py - annotation
1ec67ddcaffe
764 B
text/x-python
ldap: handle more elegantly that python-ldap isn't installed when trying to use ldap
Don't fail with
AttributeError: 'NoneType' object has no attribute 'SCOPE_SUBTREE'
in the log.
Don't fail with
AttributeError: 'NoneType' object has no attribute 'SCOPE_SUBTREE'
in the log.
1e757ac98988 1e757ac98988 2029c17cc6c6 5d676b6ab71c 5d676b6ab71c f522f4d3bf93 5d676b6ab71c 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 6c86c987cf93 6c86c987cf93 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 2029c17cc6c6 1e757ac98988 1e757ac98988 1e757ac98988 | """SQLAlchemy Metadata and Session object"""
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import scoped_session, sessionmaker
from beaker import cache
from rhodecode.lib import caching_query
# Beaker CacheManager. A home base for cache configurations.
cache_manager = cache.CacheManager()
__all__ = ['Base', 'Session']
#
# SQLAlchemy session manager. Updated by model.init_model()
#
Session = scoped_session(
sessionmaker(
query_cls=caching_query.query_callable(cache_manager),
expire_on_commit=True,
)
)
# The declarative Base
Base = declarative_base()
#to use cache use this in query
#.options(FromCache("sqlalchemy_cache_type", "cachekey"))
|