Skip to content

Commit 657c3de

Browse files
committed
refactoring
1 parent 9e091c9 commit 657c3de

File tree

2 files changed

+8
-16
lines changed

2 files changed

+8
-16
lines changed

app/controllers/exercises_controller.rb

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,7 @@ def edit
3535
# POST /exercises.json
3636
def create
3737
@exercise = Exercise.new(exercise_params)
38-
@exercise.add_files(params[:exercise][:exercise_files_attributes])
39-
@exercise.add_descriptions(params[:exercise][:descriptions_attributes])
38+
@exercise.add_attributes(params[:exercise])
4039
@exercise.user = current_user
4140
respond_to do |format|
4241
if @exercise.save
@@ -52,12 +51,7 @@ def create
5251
# PATCH/PUT /exercises/1
5352
# PATCH/PUT /exercises/1.json
5453
def update
55-
#@exercise.exercise_files.each do |file|
56-
# file.update(file_params(file))
57-
#end
58-
@exercise.add_tests(params[:exercise][:tests_attributes])
59-
@exercise.add_files(params[:exercise][:exercise_files_attributes])
60-
@exercise.add_descriptions(params[:exercise][:descriptions_attributes])
54+
@exercise.add_attributes(params[:exercise])
6155
respond_to do |format|
6256
if @exercise.update(exercise_params)
6357
format.html { redirect_to @exercise, notice: 'Exercise was successfully updated.' }
@@ -103,12 +97,4 @@ def set_exercise
10397
def exercise_params
10498
params.require(:exercise).permit(:title, :description, :maxrating, :public)
10599
end
106-
107-
def file_params(file)
108-
params.require(file.id.to_s).permit(:main, :content, :path, :solution, :filetype)
109-
end
110-
111-
def test_params(test)
112-
params.require('test_'+test.id.to_s).permit(:content, :feedback_message, :testing_framework_id)
113-
end
114100
end

app/models/exercise.rb

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,12 @@ def round_avg_rating
4545
(avg_rating*2).round / 2.0
4646
end
4747

48+
def add_attributes(params)
49+
add_tests(params[:tests_attributes])
50+
add_files(params[:exercise_files_attributes])
51+
add_descriptions(params[:descriptions_attributes])
52+
end
53+
4854
def add_descriptions(description_array)
4955
description_array.try(:each) do |key, array|
5056
destroy = array[:_destroy]

0 commit comments

Comments
 (0)