30 lines
800 B
Python

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)