Class: Spree::Base
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Spree::Base
- Includes:
- Preferences::Preferable, RansackableAttributes
- Defined in:
- app/models/spree/base.rb
Direct Known Subclasses
Address, Adjustment, AdjustmentReason, Asset, Calculator, Carton, Classification, Country, CreditCard, CustomerReturn, InventoryUnit, LegacyUser, LineItem, LineItemAction, LogEntry, OptionType, OptionTypePrototype, OptionValue, OptionValuesVariant, Order, OrderMutex, OrderPromotion, OrderStockLocation, Payment, PaymentCaptureEvent, PaymentMethod, Preference, Price, Product, ProductOptionType, ProductPromotionRule, ProductProperty, Promotion, PromotionAction, PromotionCategory, PromotionCode, PromotionRule, PromotionRuleTaxon, PromotionRuleUser, Property, PropertyPrototype, Prototype, PrototypeTaxon, Refund, RefundReason, Reimbursement, Reimbursement::Credit, ReimbursementType, ReturnAuthorization, ReturnItem, ReturnReason, Role, RoleUser, Shipment, ShippingCategory, ShippingMethod, ShippingMethodCategory, ShippingMethodStockLocation, ShippingMethodZone, ShippingRate, State, StateChange, StockItem, StockLocation, StockMovement, StockTransfer, Store, StoreCredit, StoreCreditCategory, StoreCreditEvent, StoreCreditType, StoreCreditUpdateReason, StorePaymentMethod, TaxCategory, TaxRate, Taxon, Taxonomy, Tracker, TransferItem, UnitCancel, UserAddress, UserStockLocation, Variant, VariantPropertyRule, VariantPropertyRuleCondition, VariantPropertyRuleValue, Zone, ZoneMember
Class Method Summary collapse
- .page(num) ⇒ Object
-
.preference(*args) ⇒ Object
Only run preference initialization on models which requires it.
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_defaults ⇒ Object
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 |