summaryrefslogtreecommitdiff
path: root/archaeological_context_records
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@proxience.com>2015-01-25 14:19:38 +0100
committerÉtienne Loks <etienne.loks@proxience.com>2015-01-25 14:19:38 +0100
commit246e2b39b44fd80f2cc636e3a187f57fbe91a2a6 (patch)
treeffd248c1b8e36770a9d224fd218929676753e5e1 /archaeological_context_records
parent4cc5612d9c4626e23312f4830a6dde974bda0c41 (diff)
downloadIshtar-246e2b39b44fd80f2cc636e3a187f57fbe91a2a6.tar.bz2
Ishtar-246e2b39b44fd80f2cc636e3a187f57fbe91a2a6.zip
Context records: fix post delete and post save of records relations
Diffstat (limited to 'archaeological_context_records')
-rw-r--r--archaeological_context_records/models.py17
1 files changed, 9 insertions, 8 deletions
diff --git a/archaeological_context_records/models.py b/archaeological_context_records/models.py
index 8cc10172f..59716be8b 100644
--- a/archaeological_context_records/models.py
+++ b/archaeological_context_records/models.py
@@ -284,22 +284,22 @@ class RecordRelations(models.Model):
verbose_name_plural = _(u"Record relations")
def save(self, *args, **kwargs):
- obj = super(RelationType, self).save(*args, **kwargs)
+ super(RecordRelations, self).save(*args, **kwargs)
# after saving create the symetric or the inverse relation
- sym_rel_type = obj.relation_type
- if not obj.relation_type.symmetrical:
- sym_rel_type = obj.relation_type.inverse_relation
+ sym_rel_type = self.relation_type
+ if not self.relation_type.symmetrical:
+ sym_rel_type = self.relation_type.inverse_relation
# no symetric/inverse is defined
if not sym_rel_type:
return
dct = {'right_record':self.left_record, 'left_record':self.right_record,
- 'relation_type':self.relation_type}
+ 'relation_type':sym_rel_type}
RecordRelations.objects.get_or_create(**dct)
- return obj
+ return self
def post_delete_record_relation(sender, instance, **kwargs):
# delete symmetrical or inverse relation
@@ -311,8 +311,9 @@ def post_delete_record_relation(sender, instance, **kwargs):
if not sym_rel_type:
return
- dct = {'right_record':self.left_record, 'left_record':self.right_record,
- 'relation_type':self.relation_type}
+ dct = {'right_record':instance.left_record,
+ 'left_record':instance.right_record,
+ 'relation_type':sym_rel_type}
RecordRelations.objects.filter(**dct).delete()
post_delete.connect(post_delete_record_relation, sender=RecordRelations)