start migrating from DRF to ninja

This commit is contained in:
Ross
2023-02-27 14:49:25 +00:00
parent 6b6d909038
commit fcf22fdd73
14 changed files with 215 additions and 49 deletions
+22
View File
@@ -1,5 +1,9 @@
from django.core.exceptions import PermissionDenied
from django.http import Http404
from .constants import Group
from functools import wraps
def user_is_cid_user_manager(function):
def wrap(request, *args, **kwargs):
@@ -14,3 +18,21 @@ def user_is_cid_user_manager(function):
wrap.__doc__ = function.__doc__
wrap.__name__ = function.__name__
return wrap
def check_user_in_group(*groups: Group):
print("DEC")
print(groups)
def decorator(function):
@wraps(function)
def wrapper(request, *args, **kwargs):
print(request.user)
if request.user.is_superuser or request.user.groups.filter(
name__in=[group.name for group in groups]
).exists():
return function(request, *args, **kwargs)
raise PermissionDenied
return wrapper
return decorator