module ActsAsPriceableOn::ActiveRecord::Priceable::ClassMethods
Public Instance Methods
acts_as_priceable()
click to toggle source
# File lib/acts_as_priceable_on/active_record/priceable.rb, line 10 def acts_as_priceable acts_as_priceable_on :prices end
acts_as_priceable_on(*types, options)
click to toggle source
# File lib/acts_as_priceable_on/active_record/priceable.rb, line 14 def acts_as_priceable_on(*types, options) types << options unless options.is_a? Hash types.each do |type| name = type.to_s.singularize.titleize # :charges => 'Charge' #if constant doesn't already exist, create it as subclass of Price unless ActsAsPriceableOn.const_defined?(name) ActsAsPriceableOn.const_set name, Class.new(Price) end has_many type, as: :priceable, class_name: "ActsAsPriceableOn::#{name}" end end