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
-
#impressionist_cache_options ⇒ Object
Returns the value of attribute impressionist_cache_options.
Instance Method Summary collapse
- #counter_caching? ⇒ Boolean
- #define_association ⇒ Object
- #imp_cache_options_set(options) ⇒ Object
- #impressionist_counter_cache_options ⇒ Object
-
#impressionist_counter_caching? ⇒ Boolean
true or false.
- #is_impressionable(options = {}) ⇒ Object
Instance Attribute Details
#impressionist_cache_options ⇒ Object
Returns the value of attribute impressionist_cache_options.
6 7 8 |
# File 'app/models/impressionist/impressionable.rb', line 6 def @impressionist_cache_options end |
Instance Method Details
#counter_caching? ⇒ 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 |
#define_association ⇒ Object
14 15 16 17 18 |
# File 'lib/impressionist/models/active_record/impressionist/impressionable.rb', line 14 def define_association has_many(:impressions, :as => :impressionable, :dependent => :destroy) end |
#imp_cache_options_set(options) ⇒ Object
20 21 22 |
# File 'lib/impressionist/models/active_record/impressionist/impressionable.rb', line 20 def () @impressionist_cache_options = end |
#impressionist_counter_cache_options ⇒ Object
10 11 12 13 |
# File 'app/models/impressionist/impressionable.rb', line 10 def @impressionist_cache_options ||= {} @impressionist_cache_options.reverse_merge!(DEFAULT_CACHE) end |
#impressionist_counter_caching? ⇒ Boolean
true or false
16 17 18 |
# File 'app/models/impressionist/impressionable.rb', line 16 def impressionist_counter_caching? [:counter_cache] end |
#is_impressionable(options = {}) ⇒ Object
8 9 10 11 12 13 14 15 |
# File 'lib/impressionist/models/mongoid/impressionist/impressionable.rb', line 8 def is_impressionable(={}) has_many :impressions, as: :impressionable, dependent: :destroy @impressionist_cache_options = [:counter_cache] if !@impressionist_cache_options.nil? opts = field opts[:column_name], type: Integer end end |