File size: 1,115 Bytes
b7f55e1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from django.shortcuts import render, get_object_or_404, redirect
from django.contrib.auth.decorators import login_required
from django.contrib import messages
from .models import SchoolClass
from django import forms

class ClassForm(forms.ModelForm):
    class Meta:
        model = SchoolClass
        fields = ['name', 'grade_level', 'section', 'room_number', 'academic_year']

@login_required
def class_list(request):
    classes = SchoolClass.objects.all()
    return render(request, 'classes/list.html', {'classes': classes})

@login_required
def class_detail(request, pk):
    school_class = get_object_or_404(SchoolClass, pk=pk)
    students = school_class.students.all()
    return render(request, 'classes/detail.html', {'school_class': school_class, 'students': students})

@login_required
def class_add(request):
    form = ClassForm(request.POST or None)
    if form.is_valid():
        form.save()
        messages.success(request, 'Class created!')
        return redirect('class_list')
    return render(request, 'classes/form.html', {'form': form, 'title': 'Add Class'})