muryshev's picture
update
86c402d
raw
history blame contribute delete
957 Bytes
from sqlalchemy import (
Boolean,
ForeignKey,
Integer,
String,
)
from sqlalchemy.orm import Mapped, relationship, mapped_column
from components.dbo.models.base import Base
class Dataset(Base):
"""
Сущность, которая хранит информацию о датасете.
"""
__tablename__ = "dataset"
name: Mapped[str] = mapped_column(String, unique=True)
is_draft: Mapped[bool] = mapped_column(Boolean, default=True)
is_active: Mapped[bool] = mapped_column(Boolean, default=True)
previous_dataset_id: Mapped[int] = mapped_column(Integer, ForeignKey("dataset.id"), nullable=True)
documents: Mapped[list["DatasetDocument"]] = relationship(
"DatasetDocument", back_populates="dataset",
cascade="all, delete-orphan"
)
entities: Mapped[list["EntityModel"]] = relationship(
"EntityModel", back_populates="dataset",
cascade="all, delete-orphan"
)