From 3089d83e7699efa0d302a882e1afa0bdc892cc92 Mon Sep 17 00:00:00 2001 From: Sapan Bhatia Date: Tue, 29 Apr 2014 14:36:51 -0400 Subject: [PATCH] Make the deletion check a default filter on the base model, inherited by subclasses of the base model. --- planetstack/core/models/plcorebase.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/planetstack/core/models/plcorebase.py b/planetstack/core/models/plcorebase.py index 9ce409d..2f7fd82 100644 --- a/planetstack/core/models/plcorebase.py +++ b/planetstack/core/models/plcorebase.py @@ -18,6 +18,8 @@ except: def notify_observer(*args, **kwargs): pass +# This manager will be inherited by all subclasses because +# the core model is abstract. class PlCoreBaseManager(models.Manager): def get_query_set(self): return super(PlCoreBaseManager, self).get_query_set().filter(deleted=False) @@ -34,6 +36,8 @@ class PlCoreBase(models.Model): deleted = models.BooleanField(default=False) class Meta: + # Changing abstract to False would require the managers of subclasses of + # PlCoreBase to be customized individually. abstract = True app_label = "core" -- 2.43.0