Exemple #1
0
def LeaderBoard(request):
    from subjective.views import createobject
    createobject()
    rank = Subscore.objects.all()
    obj = Mcqscore.objects.all()

    kj=0
    print(obj)
    if len(rank)>0:
        for i in rank:
            print("j")

            for j in obj:
                if j.usermcq == i.usersub:
                    print(rank[kj].subscore)
                    rank[kj].subscore += j.mcqscore
                    print(rank[kj].subscore)
            kj+=1
        newlist = sorted(rank, key=lambda x: x.subscore, reverse=True)
    elif len(obj)>0:
        for i in obj:
            print("j")
            for j in rank:
                if j.usersub == i.usermcq:
                    #print(rank[kj].subscore)
                    obj[kj].mcqscore += j.subscore
                    #print(rank[kj].subscore)
            kj += 1
        newlist = sorted(obj, key=lambda x: x.mcqscore, reverse=True)

    # To return a new list, use the sorted() built-in function...
    if (len(obj)==0 and len(rank)==0):
        return render(request, 'leaderboard1.html')
    print(newlist)
    return render(request,'leaderboard.html', {'newlist':newlist})
Exemple #2
0
def ProgressView(request):
    from subjective.views import createobject
    createobject()
    curr_user = request.user
    marks = 0
    if len(Subscore.objects.all()):
        try:
            a2 = Subscore.objects.get(user=curr_user)
            if a2:
                marks += a2.subscore
        except:
            a2 = Subscore()
            a2.user = request.user
            a2.usersub = request.user
            a2.subscore = 0
            a2.save()
            marks += a2.subscore


    if len(Mcqscore.objects.all()):
        try:
            a1 = Mcqscore.objects.get(user=curr_user)
            if a1:
                marks += a1.mcqscore
        except:
            a1 = Mcqscore()
            a1.user=request.user
            a1.usermcq=request.user
            a1.mcqscore = 0
            a1.save()
            marks += a1.mcqscore
    return render(request, 'progress.html', {"user": request.user, "marks":marks})