Files
xvatayka/core/apps/management/decorators.py
NORBOYEVSAMARIDDIN 493cb58222 first commit
2026-02-07 11:18:38 +05:00

17 lines
478 B
Python

from django.core.exceptions import PermissionDenied
def role_required(allowed_roles):
"""
Usage:
@role_required(["manager", "businessman"])
def view(request):
...
"""
def decorator(view_func):
def _wrapped_view(request, *args, **kwargs):
if request.user.role not in allowed_roles:
raise PermissionDenied
return view_func(request, *args, **kwargs)
return _wrapped_view
return decorator