From fc3f2137578ac1194c0248f1d6dc1f3177020146 Mon Sep 17 00:00:00 2001 From: Marnanel Thurman Date: Mon, 22 Jul 2019 17:58:04 +0100 Subject: [PATCH] Thing fields named f_* have content correctly parsed as JSON. Thing.entomb() had rotted; fixed. Debug print removed. --- django_kepi/models/thing.py | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/django_kepi/models/thing.py b/django_kepi/models/thing.py index 3e69e93..d60aa44 100644 --- a/django_kepi/models/thing.py +++ b/django_kepi/models/thing.py @@ -157,7 +157,7 @@ class Thing(PolymorphicModel): if value=='': value = None - result[name[2:]] = value + result[name[2:]] = json.loads(value) if self.other_fields: result.update(json.loads(self.other_fields)) @@ -280,8 +280,7 @@ class Thing(PolymorphicModel): if result==False: logger.debug(' -- deleting original object') - logger.info(' --> This is %s %s', - self, self.thing_ptr_id) + try: self.delete() except AssertionError: @@ -309,21 +308,12 @@ class Thing(PolymorphicModel): raise ValueError("%s: you can't entomb remote things %s", self, str(self.remote_url)) - former_type = self.f_type - - self.f_type = 'Tombstone' + self['type'] = 'Tombstone' + self['deleted'] = datetime.datetime.now() self.active = True - ThingField.objects.filter(parent=self).delete() - - for f,v in [ - ('former_type', former_type), - # XXX 'deleted', when we're doing timestamps - ]: - ThingField(parent=self, name=f, value=json.dumps(v)).save() - self.save() - logger.info('%s: entombing finished', self) + logger.info('%s: entombed', self) def save(self, *args, **kwargs):