Commit b8b42402d845b4e48b4b4a2bdd4cb2de6e4549ea
Exists in
colab
and in
4 other branches
Merge pull request #150 from beatrizrezener/issue46
MetricConfigurations cache on MezuroConfiguration's show #46.
Showing
4 changed files
with
11 additions
and
3 deletions
Show diff stats
app/controllers/compound_metric_configurations_controller.rb
| ... | ... | @@ -7,6 +7,7 @@ class CompoundMetricConfigurationsController < BaseMetricConfigurationsControlle |
| 7 | 7 | respond_to do |format| |
| 8 | 8 | create_and_redir(format) |
| 9 | 9 | end |
| 10 | + Rails.cache.delete("#{params[:mezuro_configuration_id].to_i}_metric_configurations") | |
| 10 | 11 | end |
| 11 | 12 | |
| 12 | 13 | def show |
| ... | ... | @@ -28,6 +29,7 @@ class CompoundMetricConfigurationsController < BaseMetricConfigurationsControlle |
| 28 | 29 | else |
| 29 | 30 | failed_action(format, 'edit') |
| 30 | 31 | end |
| 32 | + Rails.cache.delete("#{@compound_metric_configuration.configuration_id}_metric_configurations") | |
| 31 | 33 | end |
| 32 | 34 | end |
| 33 | 35 | ... | ... |
app/controllers/metric_configurations_controller.rb
| ... | ... | @@ -19,6 +19,7 @@ class MetricConfigurationsController < BaseMetricConfigurationsController |
| 19 | 19 | respond_to do |format| |
| 20 | 20 | create_and_redir(format) |
| 21 | 21 | end |
| 22 | + Rails.cache.delete("#{params[:mezuro_configuration_id]}_metric_configurations") | |
| 22 | 23 | end |
| 23 | 24 | |
| 24 | 25 | def edit |
| ... | ... | @@ -33,6 +34,7 @@ class MetricConfigurationsController < BaseMetricConfigurationsController |
| 33 | 34 | if @metric_configuration.update(metric_configuration_params) |
| 34 | 35 | format.html { redirect_to(mezuro_configuration_path(@metric_configuration.configuration_id), notice: 'Metric Configuration was successfully updated.') } |
| 35 | 36 | format.json { head :no_content } |
| 37 | + Rails.cache.delete("#{@metric_configuration.configuration_id}_metric_configurations") | |
| 36 | 38 | else |
| 37 | 39 | failed_action(format, 'edit') |
| 38 | 40 | end |
| ... | ... | @@ -45,6 +47,7 @@ class MetricConfigurationsController < BaseMetricConfigurationsController |
| 45 | 47 | format.html { redirect_to mezuro_configuration_path(params[:mezuro_configuration_id]) } |
| 46 | 48 | format.json { head :no_content } |
| 47 | 49 | end |
| 50 | + Rails.cache.delete("#{params[:mezuro_configuration_id]}_metric_configurations") | |
| 48 | 51 | end |
| 49 | 52 | |
| 50 | 53 | protected | ... | ... |
app/controllers/mezuro_configurations_controller.rb
| ... | ... | @@ -28,7 +28,9 @@ class MezuroConfigurationsController < ApplicationController |
| 28 | 28 | # GET /mezuro_configurations/1.json |
| 29 | 29 | def show |
| 30 | 30 | set_mezuro_configuration |
| 31 | - @mezuro_configuration_metric_configurations = @mezuro_configuration.metric_configurations | |
| 31 | + Rails.cache.fetch("#{@mezuro_configuration.id}_metric_configurations") do | |
| 32 | + @mezuro_configuration.metric_configurations | |
| 33 | + end | |
| 32 | 34 | end |
| 33 | 35 | |
| 34 | 36 | # GET /mezuro_configurations/1/edit |
| ... | ... | @@ -57,6 +59,7 @@ class MezuroConfigurationsController < ApplicationController |
| 57 | 59 | format.html { redirect_to mezuro_configurations_url } |
| 58 | 60 | format.json { head :no_content } |
| 59 | 61 | end |
| 62 | + Rails.cache.delete("#{@mezuro_configuration.id}_metrics") | |
| 60 | 63 | end |
| 61 | 64 | |
| 62 | 65 | private | ... | ... |
app/views/mezuro_configurations/show.html.erb
| ... | ... | @@ -24,10 +24,10 @@ |
| 24 | 24 | </tr> |
| 25 | 25 | </thead> |
| 26 | 26 | <tbody> |
| 27 | - <% if @mezuro_configuration_metric_configurations.empty? %> | |
| 27 | + <% if Rails.cache.read("#{@mezuro_configuration.id}_metric_configurations").empty? %> | |
| 28 | 28 | <%= render partial: 'no_metric_configurations' %> |
| 29 | 29 | <% else %> |
| 30 | - <%= render partial: 'metric_configurations', collection: @mezuro_configuration_metric_configurations, as: :metric_configuration %> | |
| 30 | + <%= render partial: 'metric_configurations', collection: Rails.cache.read("#{@mezuro_configuration.id}_metric_configurations"), as: :metric_configuration %> | |
| 31 | 31 | <% end %> |
| 32 | 32 | </tbody> |
| 33 | 33 | </table> | ... | ... |