Spaces:
Build error
Build error
from datetime import datetime | |
from typing import Optional, List, Dict # noqa | |
from pydantic import BaseModel, Json | |
from schemas import GroupReturn, CourseMin, TeacherShort | |
class QuizBase(BaseModel): | |
end_time: datetime | |
start_time: datetime | |
title: str | |
description: str | |
is_randomized: bool | |
display_individual: bool | |
instructor: List[int] | |
group: List[int] | |
course_id: int | |
total_marks: int = None | |
class QuizCreate(QuizBase): | |
pass | |
class QuizUpdate(QuizBase): | |
end_time: datetime = None | |
start_time: datetime = None | |
title: str = None | |
description: str = None | |
is_randomized: bool = None | |
display_individual: bool = None | |
instructor: List[int] = None | |
group: List[int] = None | |
course_id: int = None | |
total_marks: int = None | |
class QuizInDBBase(QuizBase): | |
id: Optional[int] | |
class Config: | |
orm_mode = True | |
class QuizInDB(QuizInDBBase): | |
pass | |
class Quiz(BaseModel): | |
id: Optional[int] | |
course: CourseMin | |
end_time: datetime | |
start_time: datetime | |
title: str | |
description: str | |
is_randomized: bool | |
display_individual: bool | |
total_marks: int | |
group: List[GroupReturn] | |
instructor: List[TeacherShort] | |
class Config: | |
orm_mode = True | |
# XXX | |
# XXX | |
# Quiz Question schema | |
class QuizQuestionBase(BaseModel): | |
question_text: str = None | |
question_image: List[str] = None | |
options: Json | |
answer: List[int] = None | |
quiz_id: int | |
marks: int = None | |
class QuizQuestionCreate(QuizQuestionBase): | |
pass | |
class QuizQuestionUpdate(QuizQuestionBase): | |
question_text: str = None | |
question_image: List[str] = None | |
options: Json = None | |
answer: List[int] = None | |
marks: int = None | |
quiz_id: int | |
class QuizQuestionInDBBase(QuizQuestionBase): | |
id: Optional[int] | |
options: List[Dict[str, str]] | |
class Config: | |
orm_mode = True | |
class QuizQuestionInDB(QuizQuestionInDBBase): | |
pass | |
class QuizQuestion(QuizQuestionInDBBase): | |
pass | |
class QuizQuestionwoutAnswer(BaseModel): | |
id: Optional[int] | |
question_text: str = None | |
question_image: List[str] = None | |
options: List[Dict[str, str]] | |
quiz_id: int | |
multiple: bool = False | |
marks: int | |
class Config: | |
orm_mode = True | |