from functools import wraps from flask import abort from flask_login import current_user def admin_required(f): """要求管理员权限""" @wraps(f) def decorated(*args, **kwargs): if not current_user.is_authenticated or not current_user.is_admin: abort(403) return f(*args, **kwargs) return decorated def active_required(f): """要求账号处于激活状态""" @wraps(f) def decorated(*args, **kwargs): if not current_user.is_authenticated: abort(401) if not current_user.is_active: abort(403) return f(*args, **kwargs) return decorated