app/models/concerns/hancock/cacheable.rb in hancock_cms-1.0.0.3 vs app/models/concerns/hancock/cacheable.rb in hancock_cms-1.0.0.4
- old
+ new
@@ -9,9 +9,26 @@
[]
end
def default_cache_keys
self.class.default_cache_keys
end
+ def set_default_cache_keys(strategy = :append)
+ _old_keys = cache_keys
+
+ _keys = case strategy.to_sym
+ when :append
+ (_old_keys + default_cache_keys).uniq
+ when :overwrite, :replace
+ default_cache_keys
+ else
+ _old_keys
+ end
+ self
+ end
+ def set_default_cache_keys!(strategy = :append)
+ self.set_default_cache_keys(strategy) and self.save
+ end
+
def cache_keys
cache_keys_str.split(/\s+/).map { |k| k.strip }.reject { |k| k.blank? }
end
field :perform_caching, type: Boolean, default: true