24 lines
876 B
Python

from sqlalchemy import Column, Integer, VARCHAR, String, ForeignKey
from sqlalchemy.orm import relationship
from app.infrastructure.database.models import Base
class Course(Base):
__tablename__ = 'courses'
id = Column(Integer, primary_key=True, autoincrement=True)
title = Column(VARCHAR(200), nullable=False)
description = Column(String, nullable=False)
category_id = Column(Integer, ForeignKey('categories.id'), nullable=False)
owner_user_id = Column(Integer, ForeignKey('users.id'), nullable=False)
category = relationship('Category', back_populates='courses')
owner_user = relationship('User', back_populates='owned_courses')
students = relationship('CourseStudent', back_populates='course')
notifications = relationship('Notification', back_populates='course')
lessons = relationship('Lesson', back_populates='course')