From: Hongyuan Ma Date: Sun, 17 Jun 2018 11:30:54 +0000 (+0800) Subject: update the receiver X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=2f791a2bbbece8c21bd988bfa9dee9c63b56b0b6;p=pgperffarm.git update the receiver --- diff --git a/web/apps/test_records/models.py b/web/apps/test_records/models.py index f71e44a..ddd34cc 100644 --- a/web/apps/test_records/models.py +++ b/web/apps/test_records/models.py @@ -141,15 +141,15 @@ class TestDataSet(models.Model): verbose_name_plural = "test dataset" -from django.db.models.signals import post_save, pre_save +from django.db.models.signals import pre_save from django.dispatch import receiver -@receiver(post_save, sender=TestDataSet) +@receiver(pre_save, sender=TestDataSet) def calc_status(sender, instance, **kwargs): print('dataset:' + str(instance.id) + " prev:" + str(instance.prev) + " will be save ") - record_id = instance.test_record.id + # record_id = instance.test_record.id machine_id = instance.test_record.test_machine_id add_time = instance.test_record.add_time prevRecord = TestRecord.objects.order_by('-add_time').filter(test_machine_id=machine_id, @@ -165,6 +165,8 @@ def calc_status(sender, instance, **kwargs): print("prev dataset not found") return + print("prev dataset is: " + str(prevTestDataSet.id)) + percentage = (instance.metric - prevTestDataSet.metric)/prevTestDataSet.metric status = 0 @@ -177,7 +179,9 @@ def calc_status(sender, instance, **kwargs): instance.percentage = percentage instance.status = status - instance.save() + instance.prev_id = prevTestDataSet.id + # print instance + # instance.save() return