Repository URL to install this package:
Version:
0.5.0a2 ▾
|
django-iam
/
system.py
|
---|
from django.core.exceptions import ValidationError
from django.utils.text import slugify
from .interfaces import RoleIAMInterface, RoleMigrationInterface
class SystemRole(RoleIAMInterface, RoleMigrationInterface):
def __init__(self, slug=None, name=None):
if name is None:
raise ValidationError("name can't be None")
self.slug = slug or slugify(name)
self.name = name
def has_role(self, user, obj):
return self.member_model_cls.objects.filter(
is_unarchived=True,
user=user,
role__is_unarchived=True,
role__slug=self.slug,
).exists()
__all__ = (
'SystemRole',
)