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'