Ignore:
Timestamp:
Feb 26, 2009, 11:09:28 PM (15 years ago)
Author:
price
Message:

small fixes to Record

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/packages/invirt-database/python/database/record.py

    r2187 r2191  
    11class Record(object):
    22    _identity_field = None
     3
    34    def get(self, field):
    45        try:
     
    67        except:
    78            return None
     9
    810    def _formatField(self, field):
    911        v = self.get(field)
     
    1719        else:
    1820            return repr(v)
     21
     22    @classmethod
     23    def _ignore(cls):
     24        return [cls._identity_field]
     25
    1926    def _fields(self):
    2027        ignore = self._ignore()
    21         keys = sorted(self.__class__.__dict__.keys())
    22         return [(k,self._formatField(k)) for k in keys if k[0]!="_" and k not in ignore]
     28        keys = sorted(self.c.keys())
     29        return [(k,self._formatField(k)) for k in keys if k not in ignore]
     30
    2331    def __repr__(self):
    2432        classname = self.__class__.__name__
     
    3543
    3644        return "<%s%s%s>" % (classname, identity, payload)
    37     def _ignore(self):
    38         return [self._identity_field, 'c', 'query', 'get']
    3945
    4046class FormattableRecord(Record):
Note: See TracChangeset for help on using the changeset viewer.