TIMEZONES = tuple(zip(pytz.all_timezones, pytz.all_timezones)) time_zone = models.CharField(max_length=100, blank=True, null=True, choices=TIMEZONES) class Lesson(models.Model): user = models.ForeignKey(User, null=True, default=None, related_name='lessons', on_delete=models.CASCADE) lesson_instrument = models.CharField(max_length=255, choices=instrument_list, blank=True) lesson_level = models.CharField(max_length=255, choices=level_list, blank=True) lesson_length = models.CharField(max_length=255, choices=length_list, blank=True) lesson_datetime = models.DateTimeField(null=True, blank=True) lesson_weekly = models.BooleanField(default=False, blank=True) def new_lesson(request): if request.method == 'POST': form = LessonForm(request.POST) if form.is_valid(): lessons = form.save(commit=False) lessons.user = request.user lessons.save() messages.success(request,'Lesson successfully created') return redirect('/teacher/schedule') else: messages.error(request, 'Information entered was invalid') else: form = LessonForm() form = LessonForm() lessons = Lesson.objects.filter(user=request.user) context = {'form' : form, 'lessons': lessons} return render(request, 'teacher/new_lesson.html', context) def student_sign_up(request): form = StudentSignUpForm(request.POST) if request.method == 'POST': form = StudentSignUpForm(request.POST) if form.is_valid(): user = form.save() login(request, user) return redirect('/student/dashboard') else: messages.error(request, 'Make sure all your information is valid') else: form = StudentSignUpForm() context = {'form' : form} return render(request, 'accounts/student_sign_up.html', context)