diff --git a/app/controllers/compound_metric_configurations_controller.rb b/app/controllers/compound_metric_configurations_controller.rb index 73f75ca..b9bd714 100644 --- a/app/controllers/compound_metric_configurations_controller.rb +++ b/app/controllers/compound_metric_configurations_controller.rb @@ -7,6 +7,8 @@ class CompoundMetricConfigurationsController < BaseMetricConfigurationsControlle respond_to do |format| create_and_redir(format) end + @compound_metric_configuration.configuration_id = params[:mezuro_configuration_id].to_i + Rails.cache.delete("#{@compound_metric_configuration.configuration_id}_metrics") end def show @@ -28,6 +30,7 @@ class CompoundMetricConfigurationsController < BaseMetricConfigurationsControlle else failed_action(format, 'edit') end + Rails.cache.delete("#{@compound_metric_configuration.configuration_id}_metrics") end end diff --git a/app/controllers/metric_configurations_controller.rb b/app/controllers/metric_configurations_controller.rb index 2ef901e..7f557bc 100644 --- a/app/controllers/metric_configurations_controller.rb +++ b/app/controllers/metric_configurations_controller.rb @@ -19,6 +19,8 @@ class MetricConfigurationsController < BaseMetricConfigurationsController respond_to do |format| create_and_redir(format) end + @mezuro_configuration_id = params[:mezuro_configuration_id] + Rails.cache.delete("#{@mezuro_configuration_id}_metrics") end def edit @@ -33,6 +35,7 @@ class MetricConfigurationsController < BaseMetricConfigurationsController if @metric_configuration.update(metric_configuration_params) format.html { redirect_to(mezuro_configuration_path(@metric_configuration.configuration_id), notice: 'Metric Configuration was successfully updated.') } format.json { head :no_content } + Rails.cache.delete("#{@metric_configuration.configuration_id}_metrics") else failed_action(format, 'edit') end @@ -42,9 +45,11 @@ class MetricConfigurationsController < BaseMetricConfigurationsController def destroy @metric_configuration.destroy respond_to do |format| - format.html { redirect_to mezuro_configuration_path(params[:mezuro_configuration_id]) } + @metric_configuration.configuration_id = params[:mezuro_configuration_id] + format.html { redirect_to mezuro_configuration_path(@metric_configuration.configuration_id) } format.json { head :no_content } end + Rails.cache.delete("#{@metric_configuration.configuration_id}_metrics") end protected diff --git a/app/controllers/mezuro_configurations_controller.rb b/app/controllers/mezuro_configurations_controller.rb index 58dca4d..737f7ee 100644 --- a/app/controllers/mezuro_configurations_controller.rb +++ b/app/controllers/mezuro_configurations_controller.rb @@ -28,7 +28,9 @@ class MezuroConfigurationsController < ApplicationController # GET /mezuro_configurations/1.json def show set_mezuro_configuration - @mezuro_configuration_metric_configurations = @mezuro_configuration.metric_configurations + Rails.cache.fetch("#{@mezuro_configuration.id}_metrics") do + @mezuro_configuration.metric_configurations + end end # GET /mezuro_configurations/1/edit @@ -57,6 +59,7 @@ class MezuroConfigurationsController < ApplicationController format.html { redirect_to mezuro_configurations_url } format.json { head :no_content } end + Rails.cache.delete("#{@mezuro_configuration.id}_metrics") end private diff --git a/app/views/mezuro_configurations/show.html.erb b/app/views/mezuro_configurations/show.html.erb index 656d232..0f0cefb 100644 --- a/app/views/mezuro_configurations/show.html.erb +++ b/app/views/mezuro_configurations/show.html.erb @@ -24,10 +24,10 @@ - <% if @mezuro_configuration_metric_configurations.empty? %> + <% if Rails.cache.read("#{@mezuro_configuration.id}_metrics").empty? %> <%= render partial: 'no_metric_configurations' %> <% else %> - <%= render partial: 'metric_configurations', collection: @mezuro_configuration_metric_configurations, as: :metric_configuration %> + <%= render partial: 'metric_configurations', collection: Rails.cache.read("#{@mezuro_configuration.id}_metrics"), as: :metric_configuration %> <% end %> -- libgit2 0.21.2