wip: use database for management

This commit is contained in:
2023-09-14 03:13:53 +08:00
parent b9d69fe577
commit ed1dfd11ea
2 changed files with 125 additions and 73 deletions

29
dbModels.py Normal file
View File

@ -0,0 +1,29 @@
from sqlalchemy import CHAR, TEXT
from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column
class ProjectBase(DeclarativeBase):
pass
class Property(ProjectBase):
__tablename__ = "properties"
key: Mapped[str] = mapped_column(TEXT(), primary_key=True)
value: Mapped[str] = mapped_column(TEXT(), primary_key=True)
class TagValue(ProjectBase):
__tablename__ = "tag_values"
tag: Mapped[str] = mapped_column(TEXT(), primary_key=True)
value: Mapped[str] = mapped_column(TEXT(), primary_key=True)
class ClassifiedSample(ProjectBase):
__tablename__ = "classified_samples"
sampleNumpyMd5: Mapped[str] = mapped_column(
"sample_numpy_md5", CHAR(32), primary_key=True, unique=True
)
tag: Mapped[str] = mapped_column(TEXT(), primary_key=True)