diff --git a/djangoldp/models.py b/djangoldp/models.py index 4bc67125b9b7f2953ddda755d189eb8c2a03a0fa..f76de19fade43084f6044778dd386f8671ca2a0b 100644 --- a/djangoldp/models.py +++ b/djangoldp/models.py @@ -13,8 +13,17 @@ from djangoldp.fields import LDPUrlField from djangoldp.permissions import LDPPermissions +class LDPModelManager(models.Manager): + # an alternative to all() which exlcudes external resources + def local(self): + queryset = super(LDPModelManager, self).all() + internal_ids = [x.pk for x in queryset if not Model.is_external(x)] + return queryset.filter(pk__in=internal_ids) + + class Model(models.Model): urlid = LDPUrlField(blank=True, null=True, unique=True) + objects = LDPModelManager() def __init__(self, *args, **kwargs): super(Model, self).__init__(*args, **kwargs)