コード例 #1
0
 def _filtered_data(self, data, schema=None):
     """Filter fields for RecordContainer.update() to use"""
     if not data:
         return {}
     if schema is None:
         schema = self._definition_schema()
     _getv = lambda name: data.get(name, None)
     _indata = lambda name: name in data
     if IRecord.providedBy(data):
         _getv = lambda name: getattr(data, name, None)
         _indata = lambda name: hasattr(data, name)
     fieldnames = [k for k, field in getFieldsInOrder(schema)]
     fieldnames.append('record_uid')  # only non-schema attr we keep
     return dict([(k, _getv(k)) for k in fieldnames if _indata(k)])
コード例 #2
0
 def _filtered_data(self, data, schema=None):
     """Filter fields for RecordContainer.update() to use"""
     if not data:
         return {}
     if schema is None:
         schema = self._definition_schema()
     _getv = lambda name: data.get(name, None)
     _indata = lambda name: name in data
     if IRecord.providedBy(data):
         _getv = lambda name: getattr(data, name, None)
         _indata = lambda name: hasattr(data, name)
     fieldnames = [k for k, field in getFieldsInOrder(schema)]
     fieldnames.append('record_uid')  # only non-schema attr we keep
     return dict([(k, _getv(k)) for k in fieldnames if _indata(k)])
コード例 #3
0
ファイル: base.py プロジェクト: mostscript/uu.record
 def _filtered_data(self, data):
     fieldnames = self._ad_hoc_fieldlist(data)
     if IRecord.providedBy(data):
         return dict([(k, getattr(data, k, None)) for k in fieldnames])
     return dict([(k, data.get(k, None)) for k in fieldnames])
コード例 #4
0
ファイル: base.py プロジェクト: upiq/uu.record
 def _filtered_data(self, data):
     fieldnames = self._ad_hoc_fieldlist(data)
     if IRecord.providedBy(data):
         return dict([(k, getattr(data, k, None)) for k in fieldnames])
     return dict([(k, data.get(k, None)) for k in fieldnames])