Speed up external user statistics

This commit is contained in:
Maximilian Grundke
2016-01-28 14:46:25 +01:00
parent 2a1862f39a
commit 4ee474a7d2
4 changed files with 50 additions and 6 deletions

View File

@@ -10,9 +10,9 @@ h1 = t('.title')
th.header = t(title)
tbody
- exercises.each do |exercise|
- submissions = @user.submissions.where(:exercise_id => exercise.id, :cause => ['submit', 'run'])
- if statistics[exercise.id] then stats = statistics[exercise.id] else stats = {"working_time" => 0, "runs" => 0, "score" => 0}
tr
td = link_to exercise, controller: "exercises", action: "statistics", external_user_id: @user.id, id: exercise.id
td = submissions.maximum(:score) or 0
td = submissions.count
td = exercise.average_working_time_for_only(@user.id) or 0
td = stats["maximum_score"] or 0
td = stats["runs"] or 0
td = stats["working_time"] or 0