21 lines
736 B
Python
21 lines
736 B
Python
from sqlalchemy import Column, Integer, ForeignKey, Date, Boolean
|
|
from sqlalchemy.sql import func
|
|
from sqlalchemy.orm import relationship
|
|
|
|
from app.infrastructure.database.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')
|
|
|