Попробуйте что-то в этом духе:
def to_dict(self):
return dict([(p, p.strftime('%y/%m/%d %H:%M:%s') if isinstance(p, datetime.datetime) else \
unicode(getattr(self, p))) for p in self._properties.itervalues()])
Примечание: вам может понадобиться просто datetime
вместо datetime.datetime
, в зависимости от того, как вы его импортируете.
Вы можете аналогичным образом расширитьэто для других несериализуемых типов свойств, с которыми вы можете столкнуться, если таковые имеются.