A complete Django-based web application for managing students and courses. This project allows users to add, view, update, delete, and search for courses and students. The UI is built with Bootstrap, and features include form validation, pagination, and a responsive design.
- Create Course: Add a new course with name and description.
- Update Course: Edit existing course details.
- Delete Course: Remove a course from the database.
- Validation: Prevents blank names and duplicates using Django's
clean_name()method.
- Create Student: Add a student with name, email, gender, and phone number.
- Update Student: Edit student details.
- Delete Student: Delete a student record.
- Validation: Ensures proper email format and non-empty fields.
- Search Courses: Users can search by course name using a search bar.
- The form submits a GET request and filters results based on the query.
- Displays βNo results foundβ if no matches exist.
- Course list supports pagination.
- Navigation includes:
Β« Prev| page numbers |Next Β» - Disabled buttons if no more pages.
- Clean UI with Bootstrap and Font Awesome icons.
- Styled buttons (Add, Edit, Delete) with hover effects.
- Table view for listing data with alternating row colors and hover highlight.
- Responsive design for desktops and tablets.
students_task/ β βββ students/ # Django app β βββ models.py # Models for Course and Student β βββ forms.py # Django forms with validation β βββ views.py # Core logic for rendering and form handling β βββ urls.py # URL patterns for student/course views β βββ templates/ β βββ ...html # Templates for displaying pages β
βββ db.sqlite3 # SQLite database βββ manage.py # Django project manager