f1tness_parser/app/core/database/models/approach.py
2026-10-22 23:46:29 +03:00

26 lines
820 B
Python

from datetime import datetime
from typing import TYPE_CHECKING
from sqlalchemy import DateTime, Float, ForeignKey, func
from sqlalchemy.orm import Mapped, mapped_column, relationship
from app.core.database.models.base import Base
if TYPE_CHECKING:
from app.core.database.models.exercise import ExerciseModel
class ApproachModel(Base):
__tablename__ = "approaches"
id: Mapped[int] = mapped_column(primary_key=True)
exercise_id: Mapped[int] = mapped_column(
ForeignKey("exercises.id", ondelete="CASCADE"), index=True
)
weight: Mapped[float] = mapped_column(Float)
reps: Mapped[int]
created_at: Mapped[datetime] = mapped_column(
DateTime(timezone=True), server_default=func.now()
)
exercise: Mapped["ExerciseModel"] = relationship(back_populates="approaches")