Module: Impressionist::Impressionable::ClassMethods

Defined in:
app/models/impressionist/impressionable.rb,
lib/impressionist/models/mongoid/impressionist/impressionable.rb,
lib/impressionist/models/mongo_mapper/impressionist/impressionable.rb,
lib/impressionist/models/active_record/impressionist/impressionable.rb

Constant Summary collapse

DEFAULT_CACHE =
{ :counter_cache => false, :column_name => :impressions_count, :unique => false }

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#impressionist_cache_optionsObject

Returns the value of attribute impressionist_cache_options.



6
7
8
# File 'app/models/impressionist/impressionable.rb', line 6

def impressionist_cache_options
  @impressionist_cache_options
end

Instance Method Details

#counter_caching?Boolean

Returns:

  • (Boolean)


20
21
22
23
# File 'app/models/impressionist/impressionable.rb', line 20

def counter_caching?
    ::ActiveSupport::Deprecation.warn("#counter_caching? is deprecated; please use #impressionist_counter_caching? instead")
    impressionist_counter_caching?
end

#impressionist_counter_cache_optionsObject



10
11
12
13
# File 'app/models/impressionist/impressionable.rb', line 10

def impressionist_counter_cache_options
  @impressionist_cache_options ||= {}
  @impressionist_cache_options.reverse_merge!(DEFAULT_CACHE)
end

#impressionist_counter_caching?Boolean

true or false

Returns:

  • (Boolean)


16
17
18
# File 'app/models/impressionist/impressionable.rb', line 16

def impressionist_counter_caching?
  impressionist_counter_cache_options[:counter_cache]
end

#is_impressionable(options = {}) ⇒ Object



11
12
13
14
15
16
# File 'lib/impressionist/models/mongoid/impressionist/impressionable.rb', line 11

def is_impressionable(options={})
  define_association
  @impressionist_cache_options = options

  true
end