def choose_teacher(request): if request.method == 'POST': t_user = User.objects.get(username=request.POST['teacher']) teacher = TeacherInfo.objects.get(t_id=t_user) request.user.studentinfo.s_teacher = teacher request.user.studentinfo.save() return HttpResponseRedirect('/student/my_teacher') department = get_department(request) if department is not None: teacher_list = TeacherInfo.objects.filter(t_department=department) elif request.user.is_superuser: teacher_list = TeacherInfo.objects.all() else: teacher_list = [] paginator = Paginator(teacher_list, 10) page = request.GET.get('page') try: teachers = paginator.page(page) except PageNotAnInteger: teachers = paginator.page(1) except EmptyPage: teachers = paginator.page(paginator.num_pages) context = { 'teachers': teachers, 'system_is_available': system_is_available(request), } return render(request, 'choose_teacher.html', context)
def formfield_for_foreignkey(self, db_field, request, **kwargs): department = get_department(request) if department is not None: if db_field.name == 't_office': kwargs['queryset'] = Office.objects.filter( department=department, ) return super(TeacherInfoAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
def formfield_for_foreignkey(self, db_field, request, **kwargs): department = get_department(request) if department is not None: if db_field.name == 'department': kwargs['initial'] = department kwargs['queryset'] = Department.objects.filter( name=department.name) return super(NoticeAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
def index(request): department = get_department(request) if department is not None: latest_notice = Notice.objects.filter( department=department).order_by('-pub_date')[:3] else: latest_notice = Notice.objects.order_by('-pub_date')[:3] context = {'latest_notice': latest_notice} return render(request, 'index.html', context)
def formfield_for_foreignkey(self, db_field, request, **kwargs): department = get_department(request) if department is not None: if db_field.name == 's_major': kwargs['queryset'] = Major.objects.filter( department=department) if db_field.name == 's_teacher': kwargs['queryset'] = TeacherInfo.objects.filter( t_department=department) return super(StudentInfoAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
def notice(request): department = get_department(request) if department is not None: notice_list = Notice.objects.filter( department=department).order_by('-pub_date') else: notice_list = Notice.objects.order_by('-pub_date') paginator = Paginator(notice_list, 10) page = request.GET.get('page') try: notices = paginator.page(page) except PageNotAnInteger: notices = paginator.page(1) except EmptyPage: notices = paginator.page(paginator.num_pages) context = {'notices': notices} return render(request, 'notice.html', context)