Skip to content
Snippets Groups Projects
decorators.py 494 B
Newer Older
  • Learn to ignore specific revisions
  • from functools import wraps
    from flask import abort
    from flask_login import current_user
    from .models import Permission
    
    
    def permission_required(permission):
        def decorator(f):
            @wraps(f)
            def decorated_function(*args, **kwargs):
                if not current_user.can(permission):
                    abort(403)
                return f(*args, **kwargs)
            return decorated_function
        return decorator
    
    
    def admin_required(f):
        return permission_required(Permission.ADMIN)(f)