From: smbaker Date: Tue, 30 Aug 2011 16:40:55 +0000 (-0700) Subject: added get_field method X-Git-Tag: sfa-1.0-35~2 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=b477399539a0c55bb11e7ce35b09bd168e237fe7;p=sfa.git added get_field method --- diff --git a/sfa/util/record.py b/sfa/util/record.py index a539f620..8a50a65e 100644 --- a/sfa/util/record.py +++ b/sfa/util/record.py @@ -207,6 +207,22 @@ class SfaRecord(Row): """ return GID(string=self.gid) + ## + # Returns the value of a field + + def get_field(self, fieldname, default=None): + # sometimes records act like classes, and sometimes they act like dicts + try: + return getattr(self, fieldname) + except AttributeError: + try: + return self[fieldname] + except KeyError: + if default != None: + return default + else: + raise + ## # Returns a list of field names in this record.