Il est souvent pratique de n'autoriser l'accès à une méthode d'une vue Django qu'aux seuls super utilisateurs. Pour ce faire, on pourra utiliser le décorateur suivant :
def super_user(function):
"""Decorator to grant access to super user only."""
def decorator(request):
if not request.user.is_superuser:
raise PermissionDenied("Must be superuser to get configuration")
return function(request)
return decorator
|
Ainsi, la fonction foo() d'une vue ne sera accessible qu'à un super utilisateur si on la décore avec la fonction super_user :
@super_user
def foo():
pass
|
Enjoy!
|