Merge remote-tracking branch 'ykzts/fix-unintended-cache' into gs-master

master
David Yip 7 years ago
commit 5083311d64
No known key found for this signature in database
GPG Key ID: 7DA0036508FCC0CC
  1. 4
      app/controllers/application_controller.rb

@ -199,15 +199,15 @@ class ApplicationController < ActionController::Base
def render_cached_json(cache_key, **options) def render_cached_json(cache_key, **options)
options[:expires_in] ||= 3.minutes options[:expires_in] ||= 3.minutes
options[:public] ||= true
cache_key = cache_key.join(':') if cache_key.is_a?(Enumerable) cache_key = cache_key.join(':') if cache_key.is_a?(Enumerable)
cache_public = options.key?(:public) ? options.delete(:public) : true
content_type = options.delete(:content_type) || 'application/json' content_type = options.delete(:content_type) || 'application/json'
data = Rails.cache.fetch(cache_key, { raw: true }.merge(options)) do data = Rails.cache.fetch(cache_key, { raw: true }.merge(options)) do
yield.to_json yield.to_json
end end
expires_in options[:expires_in], public: options[:public] expires_in options[:expires_in], public: cache_public
render json: data, content_type: content_type render json: data, content_type: content_type
end end

Loading…
Cancel
Save