Files
mayan-edms/mayan/apps/permissions/managers.py
2015-10-17 05:13:58 -04:00

25 lines
691 B
Python

from __future__ import unicode_literals
import logging
from django.db import models
from django.contrib.contenttypes.models import ContentType
logger = logging.getLogger(__name__)
class RoleManager(models.Manager):
def get_by_natural_key(self, label):
return self.get(label=label)
class StoredPermissionManager(models.Manager):
def get_by_natural_key(self, namespace, name):
return self.get(namespace=namespace, name=name)
def get_for_holder(self, holder):
ct = ContentType.objects.get_for_model(holder)
return self.model.objects.filter(
permissionholder__holder_type=ct
).filter(permissionholder__holder_id=holder.pk)