diff --git a/app/views/foods/toggle_column.js.erb b/app/views/foods/toggle_exposure.js.erb similarity index 100% rename from app/views/foods/toggle_column.js.erb rename to app/views/foods/toggle_exposure.js.erb diff --git a/app/views/meals/_options.html.erb b/app/views/meals/_options.html.erb index 1753cc2..06d0496 100644 --- a/app/views/meals/_options.html.erb +++ b/app/views/meals/_options.html.erb @@ -9,7 +9,7 @@ <%= select_tag 'quantity_id', - toggle_exposure_options(@project.meal_exposures, :diet) %> + toggle_exposure_options(@project.meal_quantities, :diet) %> <%= submit_tag l(:button_add) %> diff --git a/app/views/meals/toggle_exposure.js.erb b/app/views/meals/toggle_exposure.js.erb new file mode 100644 index 0000000..07e446d --- /dev/null +++ b/app/views/meals/toggle_exposure.js.erb @@ -0,0 +1 @@ +$('#meals').html('<%= j render partial: 'meals/index' %>'); diff --git a/app/views/measurements/toggle_column.js.erb b/app/views/measurements/toggle_exposure.js.erb similarity index 100% rename from app/views/measurements/toggle_column.js.erb rename to app/views/measurements/toggle_exposure.js.erb diff --git a/lib/body_tracking/project_patch.rb b/lib/body_tracking/project_patch.rb index 690e829..b73cf74 100644 --- a/lib/body_tracking/project_patch.rb +++ b/lib/body_tracking/project_patch.rb @@ -6,7 +6,8 @@ module BodyTracking::ProjectPatch has_many :foods, -> { order "name" }, dependent: :destroy, extend: BodyTracking::ItemsWithQuantities - has_many :nutrient_exposures, as: :view, dependent: :destroy, + has_many :nutrient_exposures, -> { where view_type: "Nutrient" }, dependent: :destroy, + foreign_key: :view_id, foreign_type: :view_type, class_name: 'Exposure', extend: BodyTracking::TogglableExposures has_many :nutrient_quantities, -> { order "lft" }, through: :nutrient_exposures, source: 'quantity' @@ -16,7 +17,8 @@ module BodyTracking::ProjectPatch extend: BodyTracking::ItemsWithQuantities, through: :measurement_routines has_many :meals, -> { order "eaten_at DESC" }, dependent: :destroy - has_many :meal_exposures, as: :view, dependent: :destroy, + has_many :meal_exposures, -> { where view_type: "Meal" }, dependent: :destroy, + foreign_key: :view_id, foreign_type: :view_type, class_name: 'Exposure', extend: BodyTracking::TogglableExposures has_many :meal_quantities, -> { order "lft" }, through: :meal_exposures, source: 'quantity'