Module: CacheQuery::ClassMethods
- Defined in:
- lib/cache_query.rb
Instance Method Summary collapse
Instance Method Details
#cache(cache_name, &block) ⇒ Object
51 52 53 54 55 56 57 |
# File 'lib/cache_query.rb', line 51 def cache cache_name, &block if block_given? self.class_cache_keys ||= Set.new self.class_cache_keys.add(cache_name) Rails.cache.fetch(cache_name) { yield } end end |
#cache_all ⇒ Object
47 48 49 |
# File 'lib/cache_query.rb', line 47 def cache_all Rails.cache.fetch("all_#{name}") { name.constantize.all.to_a } end |
#cache_find(id) ⇒ Object
43 44 45 |
# File 'lib/cache_query.rb', line 43 def cache_find id Rails.cache.fetch([name, id]) { self.find_by_id id } end |