'Return a dictionary mapping fields to this object\'s values.  :param
extra_fields: list of extra attribute names to include, in addition to
the fields defined on this object.'

def get_object_dict(self, extra_fields=None):

    fields = self.get_field_dict().keys()
    if extra_fields:
        fields += extra_fields
    object_dict = dict(((field_name, getattr(self, field_name)) for field_name in fields))
    self.clean_object_dicts([object_dict])
    self._postprocess_object_dict(object_dict)
    return object_dict
