Class: QuickBase::Objects::Record

Inherits:
Object
  • Object
show all
Defined in:
lib/QuickBaseObjects.rb

Overview

A Record returned by a Query.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#fieldValuesObject (readonly)

Returns the value of attribute fieldValues.



456
457
458
# File 'lib/QuickBaseObjects.rb', line 456

def fieldValues
  @fieldValues
end

#idObject (readonly)

Returns the value of attribute id.



456
457
458
# File 'lib/QuickBaseObjects.rb', line 456

def id
  @id
end

Instance Method Details

#addMethods(fieldValue) ⇒ Object



468
469
470
471
472
473
474
# File 'lib/QuickBaseObjects.rb', line 468

def addMethods(fieldValue)
     self.class.send(:define_method,"f#{fieldValue.name.strip.gsub(' ','_')}"){@fieldValues[fieldValue.name]}
     self.class.send(:define_method,"f#{fieldValue.name.strip.gsub(' ','_')}="){|valueToAssign|
        @fieldValues[fieldValue.name] = valueToAssign
        @qbc.setFieldValue(fieldValue.name,valueToAssign,@dbid,@id)
     }
end

#build(qbc, ridFieldName, qb_record) ⇒ Object



457
458
459
460
461
462
463
464
465
466
467
# File 'lib/QuickBaseObjects.rb', line 457

def build(qbc, ridFieldName,qb_record)
  @qbc = qbc
  @dbid = qbc.dbid.dup
  @fieldValues = FieldValues.new
  qb_record.each{|k,v|
     @id = v if k == ridFieldName
     fieldValue = FieldValue.new(k,v)
     @fieldValues[fieldValue.name] = fieldValue.value
     addMethods(fieldValue)
  }
end