-
Notifications
You must be signed in to change notification settings - Fork 1
Closed
Description
Backend Preparation for Assignment & Quiz Creation Integration
Is your feature request related to a problem?
πΉ Frontend for creating/editing assignments and quizzes is complete. However, backend APIs and serializers need to be verified and prepped to ensure full compatibility with the current React JSX interface.
Describe the solution you'd like
β We need fully functional and integrated backend endpoints that support the following:
- Creating, retrieving, updating, and deleting:
- Assignments
- Quizzes linked to assignments
- Questions (SA/MC)
- Choices for MC questions
- Solutions for both MC and SA types
- Consistent endpoint structure using
assignment_id,quiz_id, andquestion_idas route parameters - JSON validation in serializers for required fields
- Error handling for missing or invalid payloads
- Integration of permissions (admin/tutor only where needed)
Tasks Breakdown
- Confirm all endpoint routes from
urls.pyare active and functional - Validate all views return consistent response structures (
status,data,error) - Update serializers if needed to support nested object creation or validation
- Ensure choices are only accepted for MC questions and
short_answer_textfor SA - Confirm all routes align with frontend fetch/post expectations
- Add necessary unit tests for:
- Assignment creation
- Quiz creation under assignment
- Adding questions (SA/MC)
- Handling MC choices correctly
- Handling SA solutions cleanly
Additional Context
- π Frontend:
AssignmentCreate.jsx(React) - π Backend:
- Models:
Assignment,Quiz,Question,Choice,Solution - Views:
AssignmentDetailView,QuizListCreateView, etc. - Serializers:
AssignmentSerializer,QuestionSerializer, etc.
- Models:
- π Permissions:
IsAdminOrTutorenforced for all create/update/delete endpoints
Priority & Impact
β‘ High β This feature blocks full quiz/assignment UI functionality and frontend/backend testing.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels