Fixed creating/updating with MeasurementRoutine
Updated Measurement links with :view
This commit is contained in:
@@ -27,10 +27,8 @@ class MeasurementsController < ApplicationController
|
||||
# existing nested object (MeasurementRoutine) if it's not associated with outer object
|
||||
# https://stackoverflow.com/questions/6346134/
|
||||
# That's why routine needs to be found and associated before measurement initialization
|
||||
@measurement = @project.measurements.new do |m|
|
||||
routine_id = params[:measurement][:routine_attributes][:id]
|
||||
m.routine = @project.measurement_routines.find_by(id: routine_id) if routine_id
|
||||
end
|
||||
@measurement = @project.measurements.new
|
||||
update_routine_from_params
|
||||
@measurement.attributes = measurement_params
|
||||
@measurement.routine.project = @project
|
||||
@routine = @measurement.routine
|
||||
@@ -51,6 +49,7 @@ class MeasurementsController < ApplicationController
|
||||
end
|
||||
|
||||
def update
|
||||
update_routine_from_params
|
||||
if @measurement.update(measurement_params)
|
||||
flash[:notice] = 'Updated measurement'
|
||||
prepare_items
|
||||
@@ -117,6 +116,11 @@ class MeasurementsController < ApplicationController
|
||||
)
|
||||
end
|
||||
|
||||
def update_routine_from_params
|
||||
routine_id = params[:measurement][:routine_attributes][:id]
|
||||
@measurement.routine = @project.measurement_routines.find_by(id: routine_id) if routine_id
|
||||
end
|
||||
|
||||
def prepare_items
|
||||
params[:view] == 'index' ? prepare_measurements : prepare_readouts
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user