Move manager get code to ModelPermission class
Signed-off-by: Roberto Rosario <roberto.rosario@mayan-edms.com>
This commit is contained in:
@@ -98,6 +98,20 @@ class ModelPermission(object):
|
||||
def get_inheritance(cls, model):
|
||||
return cls._inheritances[model]
|
||||
|
||||
@classmethod
|
||||
def get_manager(cls, model):
|
||||
try:
|
||||
manager_name = cls.get_manager_name(model=model)
|
||||
except KeyError:
|
||||
manager_name = None
|
||||
|
||||
if manager_name:
|
||||
manager = getattr(model, manager_name)
|
||||
else:
|
||||
manager = model._meta.default_manager
|
||||
|
||||
return manager
|
||||
|
||||
@classmethod
|
||||
def get_manager_name(cls, model):
|
||||
return cls._manager_names[model]
|
||||
|
||||
@@ -216,18 +216,7 @@ class AccessControlListManager(models.Manager):
|
||||
)
|
||||
return True
|
||||
else:
|
||||
try:
|
||||
manager_name = ModelPermission.get_manager_name(
|
||||
model=meta.model
|
||||
)
|
||||
except KeyError:
|
||||
manager_name = None
|
||||
|
||||
if manager_name:
|
||||
manager = getattr(obj._meta.model, manager_name)
|
||||
else:
|
||||
manager = obj._meta.default_manager
|
||||
|
||||
manager = ModelPermission.get_manager(model=obj._meta.model)
|
||||
source_queryset = manager.all()
|
||||
|
||||
restricted_queryset = manager.none()
|
||||
|
||||
Reference in New Issue
Block a user