Sha256: 5994bb79019730924d2d8917dea1a770a11349f28e871d9dbebf64cc0d528496
Contents?: true
Size: 744 Bytes
Versions: 4
Compression:
Stored size: 744 Bytes
Contents
require 'money' module CollectiveIdea #:nodoc: module Acts module Money #:nodoc: def self.included(base) #:nodoc: base.extend ClassMethods end module ClassMethods def default_currency 'USD' end def money(name, options = {}) options = {:cents => "#{name}_in_cents".to_sym, :currency => default_currency}.merge(options) mapping = [[options[:cents].to_s, 'cents']] mapping << [options[:currency].to_s, 'currency'] if options[:currency] composed_of name, :class_name => 'Money', :allow_nil => true, :mapping => mapping, :converter => lambda {|m| m.to_money } end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems