Homework 4 (Controllers)
Due Mar 15, total of 100 points
Description
In this assignment, you will implement controllers to handle complex operations in your grading application, focusing on assignment submission, grade editing, and auto-assignment features:
- Create controllers to manage business logic
- Implement assignment submission functionality
- Develop a system for editing and updating grades
- Design an auto-assignment algorithm for distributing grading tasks
Your controllers should handle the following key functionalities:
submit_file
:- Handle file uploads for assignments
- Validate submission deadlines
- Generate confirmation for successful submissions
grade_submissions
:- Allow TAs to input and edit grades
- Implement grade calculation based on rubrics
- Provide an interface for leaving feedback
Note: Ensure your controllers interact properly with your models and views from previous assignments.
Bonus: Implement unit tests for your controller methods to ensure reliability and correctness.