def home_view(request): latest_quiz_list = Quiz.objects.filter(draft=0,deleted=0).order_by('-created_date')[:10] popular_quiz_list = Quiz.objects.filter(draft=0,deleted=0).annotate(num_attempts=Count('quizattempt')).order_by('-num_attempts')[:10] leaderboard = Points.get_leaderboard(10) return render_to_response('mquiz/home.html', {'latest_quiz_list': latest_quiz_list, 'popular_quiz_list':popular_quiz_list, 'leaderboard': leaderboard,}, context_instance=RequestContext(request))
def scoreboard_view(request): lb = Points.get_leaderboard()[:100] paginator = Paginator(lb, 25) # Show 25 contacts per page # Make sure page request is an int. If not, deliver first page. try: page = int(request.GET.get('page', '1')) except ValueError: page = 1 # If page request (9999) is out of range, deliver last page of results. try: leaderboard = paginator.page(page) except (EmptyPage, InvalidPage): leaderboard = paginator.page(paginator.num_pages) return render_to_response('mquiz/scoreboard.html',{'page':leaderboard}, context_instance=RequestContext(request))