当前位置: 首页>>代码示例>>Python>>正文


Python Points.get_cohort_leaderboard方法代码示例

本文整理汇总了Python中oppia.models.Points.get_cohort_leaderboard方法的典型用法代码示例。如果您正苦于以下问题:Python Points.get_cohort_leaderboard方法的具体用法?Python Points.get_cohort_leaderboard怎么用?Python Points.get_cohort_leaderboard使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在oppia.models.Points的用法示例。


在下文中一共展示了Points.get_cohort_leaderboard方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: cohort_view

# 需要导入模块: from oppia.models import Points [as 别名]
# 或者: from oppia.models.Points import get_cohort_leaderboard [as 别名]
def cohort_view(request,cohort_id):
    if not request.user.is_staff:
        raise Http404  
    cohort = Cohort.objects.get(pk=cohort_id)
    
    start_date = timezone.now() - datetime.timedelta(days=31)
    end_date = timezone.now()
    
    # get teacher activity
    teacher_activity = []
    no_days = (end_date-start_date).days + 1
    teachers =  User.objects.filter(participant__role=Participant.TEACHER, participant__cohort=cohort)
    for i in range(0,no_days,+1):
        temp = start_date + datetime.timedelta(days=i)
        day = temp.strftime("%d")
        month = temp.strftime("%m")
        year = temp.strftime("%Y")
        count = Tracker.objects.filter(course__coursecohort__cohort=cohort, 
                                       user__is_staff=False,
                                       user__in=teachers, 
                                       tracker_date__day=day,
                                       tracker_date__month=month,
                                       tracker_date__year=year).count()
        teacher_activity.append([temp.strftime("%d %b %Y"),count])
        
    # get student activity
    student_activity = []
    no_days = (end_date-start_date).days + 1
    students =  User.objects.filter(participant__role=Participant.STUDENT, participant__cohort=cohort)    
    for i in range(0,no_days,+1):
        temp = start_date + datetime.timedelta(days=i)
        day = temp.strftime("%d")
        month = temp.strftime("%m")
        year = temp.strftime("%Y")
        count = Tracker.objects.filter(course__coursecohort__cohort=cohort, 
                                       user__is_staff=False,
                                       user__in=students,  
                                       tracker_date__day=day,
                                       tracker_date__month=month,
                                       tracker_date__year=year).count()
        student_activity.append([temp.strftime("%d %b %Y"),count])
        
    # get leaderboard
    leaderboard = Points.get_cohort_leaderboard(10, cohort)
    
    
    return render_to_response('oppia/course/cohort-activity.html',
                              {'cohort':cohort,
                               'teacher_activity': teacher_activity,
                               'student_activity': student_activity, 
                               'leaderboard': leaderboard, }, 
                              context_instance=RequestContext(request))
开发者ID:DigitalCampus,项目名称:django-maf-oppia,代码行数:54,代码来源:views.py


注:本文中的oppia.models.Points.get_cohort_leaderboard方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。