Example #1
0
def new_course(request):
    if request.method == 'POST':
        params = request.POST
        course_code = params.get('course_code', '')
        name = params.get('name', '')
        unit = params.get('unit', '')
        dept_id = params.get('department', '')
        semester = params.get('semester', '')
        level = params.get('level', '')
        lecturers = params.getlist('lecturer', '')
        department = Department.objects.get(pk=dept_id)
        try:
            pay_load = {
                'course_code': course_code,
                'name': name,
                'unit': unit,
                'department': department,
                'level': level,
                'semester': semester,
            }
            course = Course(**pay_load)
            course.added_by = request.user
            course.save()
            for i in lecturers:
                lecturer = Lecturer.objects.get(pk=int(i))
                course.lecturers.add(lecturer)
            course.save()
            import pdb
            pdb.set_trace()
            messages.success(request, "The course: '%s: %s', has been successfully created" %(course.course_code, course.name))
        except Exception as e:
            messages.error(request, e)
    return HttpResponseRedirect(reverse('courses:course-list'))