from typing import Optional from pydantic import BaseModel from datetime import datetime class SubjectBase(BaseModel): name: str code: str description: Optional[str] = None class_id: int teacher_id: int class SubjectCreate(SubjectBase): pass class SubjectUpdate(BaseModel): name: Optional[str] = None code: Optional[str] = None description: Optional[str] = None class_id: Optional[int] = None teacher_id: Optional[int] = None class SubjectInDBBase(SubjectBase): id: int created_at: datetime updated_at: Optional[datetime] = None class Config: orm_mode = True class Subject(SubjectInDBBase): pass