Advertisement
techsharif

17 1 10 49

Jan 16th, 2017
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.57 KB | None | 0 0
  1. from django.shortcuts import render
  2. from django.views import View
  3. from django.http import HttpResponseRedirect
  4. from django.urls import reverse
  5. from .forms import ExamForm, ExamSubjectForm
  6. from .models import Exam
  7. from .models import Batch
  8. from .models import Subject
  9.  
  10.  
  11. class ExamCreateView(View):
  12.     def examCreate(request):
  13.         # exam_type_class = ExamTypeForm
  14.         exam_form_class = ExamForm
  15.         subject_form_class = ExamSubjectForm
  16.         template_name = 'exam/new.html'
  17.  
  18.         if request.method == 'POST':
  19.             exam_form = exam_form_class(request.POST)
  20.             if exam_form.is_valid():
  21.                 exam_form.save()
  22.                 return HttpResponseRedirect(reverse('exam_subjects', args=(9,)))
  23.             else:
  24.                 return render(request, 'exam/error.html',
  25.                               {'error': exam_form.errors})
  26.         return render(request, template_name, {'exam_form': exam_form_class(), 'subject_form': subject_form_class()})
  27.  
  28.  
  29. class ExamListView(View):
  30.     template_name = 'exam/list.html'
  31.     exams = Exam.objects.order_by('date')
  32.  
  33.     def get(self, request):
  34.         return render(request, self.template_name, {'exams': self.exams})
  35.  
  36.  
  37. class ExamSubjectView(View):
  38.     def getSubjects(request, id):
  39.         template_name = 'exam/subjects_on_exam.html'
  40.         exam = Exam.objects.get(id=id)
  41.         batch = Batch.objects.get(id=exam.batch.id)
  42.         subjects = Subject.objects.filter(academic_class__id=batch.batch_academic_class.id)
  43.         return render(request, template_name, {'subjects': subjects})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement