From 911184375250d3d8e6d1fb0afd3ec6333d608469 Mon Sep 17 00:00:00 2001 From: Travis Swicegood Date: Mon, 7 Oct 2013 18:15:41 -0500 Subject: [PATCH] Refactor to make sure get_subclass() is on QuerySet There's an edge case where you might want to call get_subclass() on a QuerySet the same way you can call get() after you have already called various filter/exclude methods. --- model_utils/managers.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/model_utils/managers.py b/model_utils/managers.py index abb18b4..3c72585 100644 --- a/model_utils/managers.py +++ b/model_utils/managers.py @@ -96,6 +96,8 @@ class InheritanceQuerySet(QuerySet): else: return node + def get_subclass(self, *args, **kwargs): + return self.select_subclasses().get(*args, **kwargs) class InheritanceManager(models.Manager): @@ -108,8 +110,7 @@ class InheritanceManager(models.Manager): return self.get_query_set().select_subclasses(*subclasses) def get_subclass(self, *args, **kwargs): - return self.get_query_set().select_subclasses().get(*args, **kwargs) - + return self.get_query_set().get_subclass(*args, **kwargs) class QueryManager(models.Manager):