Basic usage
Input
require_roles('admin') @require_roles('admin') def admin_task(user): return 'admin done' admin_task({'role':'admin'})
Output
admin done
User has role 'admin', which is allowed, so the function runs and returns 'admin done'.
Full lesson preview
Build a decorator factory require_roles that restricts function execution based on a user's role.
Problem statement
Task
Examples
Input
require_roles('admin') @require_roles('admin') def admin_task(user): return 'admin done' admin_task({'role':'admin'})
Output
admin done
User has role 'admin', which is allowed, so the function runs and returns 'admin done'.
Input format
Output format
Constraints
Samples
Input
edit_article({'role':'editor'}, 'Title')
Output
edited Title
The 'editor' role is allowed to edit; the function returns the edited title message.