from sqlalchemy import Column, Integer, ForeignKey, Date, Boolean from sqlalchemy.sql import func from sqlalchemy.orm import relationship from app.domain.models import Base class CourseStudent(Base): __tablename__ = 'course_students' id = Column(Integer, primary_key=True, autoincrement=True) enrollment_date = Column(Date, nullable=False, default=func.utcnow) is_finished = Column(Boolean, nullable=False, default=False) course_id = Column(Integer, ForeignKey('courses.id'), nullable=False) user_id = Column(Integer, ForeignKey('users.id'), nullable=False) course = relationship('Course', back_populates='students') user = relationship('User', back_populates='enrolled_courses')