예제 #1
0
def _make_module():
    db = ModuleType('db')
    _get_items = lambda mod: ((key, getattr(mod, key)) for key in mod.__all__)
    modules = (_get_items(sqlalchemy), _get_items(orm))
    for module in modules:
        for key, value in module:
            setattr(db, key, value)

    # support for postgresql array type
    from sqlalchemy.dialects.postgresql.base import PGArray
    db.PGArray = PGArray

    db.get_engine = get_engine
    db.session = session
    db.metadata = metadata
    db.mapper = mapper
    db.atomic_add = atomic_add
    db.no_autoflush = no_autoflush
    db.find_next_increment = find_next_increment
    db.select_blocks = select_blocks
    db.driver = driver
    db.Model = Model
    db.Query = Query
    db.File = File
    db.SlugGenerator = SlugGenerator
    db.GuidGenerator = GuidGenerator
    db.AttributeExtension = AttributeExtension
    db.ColumnProperty = orm.ColumnProperty
    db.NoResultFound = orm.exc.NoResultFound
    db.SQLAlchemyError = exc.SQLAlchemyError
    return db
예제 #2
0
def _make_module():
    db = ModuleType('db')
    _get_items = lambda mod: ((key, getattr(mod, key)) for key in mod.__all__)
    modules = (_get_items(sqlalchemy), _get_items(orm))
    for module in modules:
        for key, value in module:
            setattr(db, key, value)

    # support for postgresql array type
    from sqlalchemy.dialects.postgresql.base import PGArray
    db.PGArray = PGArray

    db.get_engine = get_engine
    db.session = session
    db.metadata = metadata
    db.mapper = mapper
    db.atomic_add = atomic_add
    db.no_autoflush = no_autoflush
    db.find_next_increment = find_next_increment
    db.select_blocks = select_blocks
    db.driver = driver
    db.Model = Model
    db.Query = Query
    db.File = File
    db.SlugGenerator = SlugGenerator
    db.GuidGenerator = GuidGenerator
    db.AttributeExtension = AttributeExtension
    db.ColumnProperty = orm.ColumnProperty
    db.NoResultFound = orm.exc.NoResultFound
    db.SQLAlchemyError = exc.SQLAlchemyError
    return db