from sqlalchemy import MetaData as _MetaData __all__ = [ 'MetaData', ] class MetaData(_MetaData): """ App specific subclass of the SQLAlchemy MetaData class. """ # Define naming convention for constraints _naming_convention = { "ix": 'ix_%(column_0_label)s', "uq": "uq_%(table_name)s_%(column_0_name)s", "ck": "ck_%(table_name)s_%(constraint_name)s", "fk": "fk_%(table_name)s_%(column_0_name)s_%(referred_table_name)s", "pk": "pk_%(table_name)s" } def __init__(self, *args, naming_convention=None, **kwargs): if not naming_convention: naming_convention = self._naming_convention super().__init__(*args, naming_convention=naming_convention, **kwargs)