Reduce N+1 queries for ExercisesController#feedback
Fixes CODEOCEAN-TF
This commit is contained in:
@ -90,9 +90,12 @@ class ExercisesController < ApplicationController
|
|||||||
|
|
||||||
def feedback
|
def feedback
|
||||||
authorize!
|
authorize!
|
||||||
@feedbacks = @exercise.user_exercise_feedbacks.paginate(page: params[:page], per_page: per_page_param)
|
@feedbacks = @exercise
|
||||||
|
.user_exercise_feedbacks
|
||||||
|
.includes(:exercise, user: [:programming_groups])
|
||||||
|
.paginate(page: params[:page], per_page: per_page_param)
|
||||||
@submissions = @feedbacks.map do |feedback|
|
@submissions = @feedbacks.map do |feedback|
|
||||||
feedback.exercise.final_submission(feedback.user.programming_groups.where(exercise: @exercise).presence || feedback.user)
|
feedback.exercise.final_submission(feedback.user.programming_groups.select {|pg| pg.exercise = @exercise }.presence || feedback.user)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user