Checking User permission Decorator from Django permissions Groups, if can't find then redirect to permission-denied
def check_permission():
"""checking permissions"""
def decorator(func):
def inner_decorator(request, *args, **kwargs):
user = request.user
user_perm = user.user_permissions.all()
user_perm = list(user_perm)
#adding permissions from groups and individuals
for k in user.groups.all():
user_perm = user_perm + list(k.permissions.all())
table = Table.objects.filter(permissions__in=user_perm).distinct()
if categories:
return func(request, categories, *args, **kwargs)
else:
return HttpResponseRedirect('/permission-denied/')
return wraps(func)(inner_decorator)
return decorator