From 362349e24bb7e9a50b6e08cd2ca445cb707b9e7c Mon Sep 17 00:00:00 2001 From: Giovani Zamboni Date: Wed, 16 Dec 2015 12:28:12 -0200 Subject: [PATCH] get_default_plan handling exceptions Add more precise exceptions handling on plans.Plan.get_default_plan --- plans/models.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/plans/models.py b/plans/models.py index 594d1c2c..86a8c39f 100644 --- a/plans/models.py +++ b/plans/models.py @@ -70,9 +70,12 @@ def save(self, *args, **kwargs): @classmethod def get_default_plan(cls): try: - return cls.objects.filter(default=True)[0] - except IndexError: - return None + return_value = cls.objects.get(default=True) + except cls.MultipleObjectsReturned: + return_value = cls.objects.first() + except cls.DoesNotExist: + return_value = None + return return_value def __str__(self): return self.name