diff --git a/model_utils/managers.py b/model_utils/managers.py index 54ce032..7cc2ab8 100644 --- a/model_utils/managers.py +++ b/model_utils/managers.py @@ -6,6 +6,7 @@ from django.db import models from django.db.models.fields.related import OneToOneField from django.db.models.manager import Manager from django.db.models.query import QuerySet +from django.core.exceptions import ObjectDoesNotExist class InheritanceQuerySet(QuerySet): @@ -36,7 +37,7 @@ class InheritanceQuerySet(QuerySet): def get_attr(obj, s): try: return getattr(obj,s) - except: + except ObjectDoesNotExist: return None sub_obj = [getattr(obj, s) for s in self.subclasses if get_attr(obj, s)] or [obj] sub_obj = sub_obj[0]