Implement BaseModel class, TimestampMixin, TzDateTime type; cleanup Task model
This commit is contained in:
parent
7ce43a2bfe
commit
252c15acbd
15 changed files with 223 additions and 42 deletions
25
tofu_api/common/database/metadata.py
Normal file
25
tofu_api/common/database/metadata.py
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
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)
|
||||
Loading…
Add table
Add a link
Reference in a new issue