from typing import TYPE_CHECKING from sqlalchemy import ForeignKey from sqlalchemy.orm import Mapped, mapped_column, relationship from models.base import BaseModel if TYPE_CHECKING: from models import Status class Deal(BaseModel): __tablename__ = "deals" id: Mapped[int] = mapped_column(primary_key=True) name: Mapped[str] = mapped_column(nullable=False) lexorank: Mapped[str] = mapped_column(nullable=False) status_id: Mapped[int] = mapped_column( ForeignKey("statuses.id"), nullable=False, comment="Текущий статус", ) status: Mapped["Status"] = relationship(lazy="selectin")