Class: Spree::Base

Inherits:
ActiveRecord::Base
  • Object
show all
Includes:
Preferences::Preferable, RansackableAttributes
Defined in:
app/models/spree/base.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Preferences::Preferable

#default_preferences, #defined_preferences, #get_preference, #has_preference!, #has_preference?, #preference_default, #preference_type, #set_preference

Class Method Details

.page(num) ⇒ Object



23
24
25
# File 'app/models/spree/base.rb', line 23

def self.page(num)
  send Kaminari.config.page_method_name, num
end

.preference(*args) ⇒ Object

Only run preference initialization on models which requires it. Improves performance of record initialization slightly.



15
16
17
18
19
20
# File 'app/models/spree/base.rb', line 15

def self.preference(*args)
  # after_initialize can be called multiple times with the same symbol, it
  # will only be called once on initialization.
  after_initialize :initialize_preference_defaults
  super
end

Instance Method Details

#initialize_preference_defaultsObject



7
8
9
10
11
# File 'app/models/spree/base.rb', line 7

def initialize_preference_defaults
  if has_attribute?(:preferences)
    self.preferences = default_preferences.merge(preferences)
  end
end