Method: Invoicing::LedgerItem#initialize

Defined in:
lib/invoicing/ledger_item.rb

#initialize(*args) ⇒ Object

Overrides the default constructor of ActiveRecord::Base when acts_as_ledger_item is called. If the uuid gem is installed, this constructor creates a new UUID and assigns it to the uuid property when a new ledger item model object is created.



416
417
418
419
420
421
422
423
# File 'lib/invoicing/ledger_item.rb', line 416

def initialize(*args)
  super
  # Initialise uuid attribute if possible
  info = ledger_item_class_info
  if self.has_attribute?(info.method(:uuid)) && info.uuid_generator
    write_attribute(info.method(:uuid), info.uuid_generator.generate)
  end
end