module Accountability::Extensions::ActsAsBillable

Public Instance Methods

acts_as_billable() click to toggle source
# File lib/accountability/extensions/acts_as_billable.rb, line 7
def acts_as_billable
  after_create :create_default_account

  has_many :accounts, as: :billable, class_name: 'Accountability::Account', dependent: :nullify

  self.acts_as = acts_as.dup << :billable

  define_method :create_default_account do
    accounts.first_or_create
  end

  define_method :default_account do
    accounts.first
  end
end