from datetime import datetime from typing import TYPE_CHECKING from sqlalchemy.orm import mapped_column, Mapped, relationship from models import BaseModel if TYPE_CHECKING: from board import Board class Project(BaseModel): __tablename__ = "projects" id: Mapped[int] = mapped_column(primary_key=True) name: Mapped[str] = mapped_column(nullable=False) created_at: Mapped[datetime] = mapped_column(nullable=False) is_deleted: Mapped[bool] = mapped_column(default=False) boards: Mapped[list["Board"]] = relationship( "Board", back_populates="project", lazy="noload", )