From ccf2f1f5fd2154ba716395112e8e69692dc9aba8 Mon Sep 17 00:00:00 2001 From: Sebastian Serth Date: Fri, 8 Oct 2021 09:26:39 +0200 Subject: [PATCH] Memoize @exercise_params --- app/controllers/exercises_controller.rb | 28 ++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/app/controllers/exercises_controller.rb b/app/controllers/exercises_controller.rb index 1aca9f04..887050f2 100644 --- a/app/controllers/exercises_controller.rb +++ b/app/controllers/exercises_controller.rb @@ -201,11 +201,29 @@ raise: false private :user_by_codeharbor_token def exercise_params - if params[:exercise].present? - params[:exercise].permit(:description, :execution_environment_id, :file_id, :instructions, :submission_deadline, :late_submission_deadline, :public, :unpublished, :hide_file_tree, :allow_file_creation, :allow_auto_completion, :title, :expected_difficulty, :tips, files_attributes: file_attributes, tag_ids: []).merge( - user_id: current_user.id, user_type: current_user.class.name - ) - end + @exercise_params ||= if params[:exercise].present? + params[:exercise].permit( + :description, + :execution_environment_id, + :file_id, + :instructions, + :submission_deadline, + :late_submission_deadline, + :public, + :unpublished, + :hide_file_tree, + :allow_file_creation, + :allow_auto_completion, + :title, + :expected_difficulty, + :tips, + files_attributes: file_attributes, + tag_ids: [] + ).merge( + user_id: current_user.id, + user_type: current_user.class.name + ) + end end private :exercise_params