flask - 当前用户的装饰者是管理员
问题描述
我正在尝试添加这样的装饰器
def requires_admin(f):
def wrapper(f):
@wraps(f)
def wrapped(*args, **kwargs):
#if not admin:
flash('You are not authorize to this page')
return f(*args, **kwargs)
return wrapped
return wrapper
我的用户模型有这个字段:admin = db.Column(Boolean)
谢谢
解决方案
在这里研究login_required的实现flask_login
可能会有用。快速浏览一下就会发现您的代码片段使用了额外的包装层,并且阅读它们会显示您可能想要考虑的一些边缘情况。
推荐阅读
- ruby-on-rails - 由于不可思议的兼容性问题,无法使用 bundle 安装 rails
- javascript - 通过数组映射,为每个元素创建一个键值对,并为每个对赋予一个字母的键
- java - 如何创建新类并创建其类型的新变量?
- python - 如何使用 Pyinstaller 将包含 Pyomo、GLPK、IPOPT 的 Python 脚本转换为单个 exe 应用程序
- python - 如何在终端上链接 2 个命令
- r - 使用 ACS PUMS 数据将 Stata 代码转换为 R(创建标志和新变量)
- timescaledb - SQL 错误 [42883]:错误:timescaleDB 不存在函数 percentile_agg(双精度)
- python - 在具有多个处理程序的记录器中更改处理程序的日志级别
- mysql - (MYSQL) 如果 FK 有 ON UPDATE CASCADE,为什么子行不被更新
- django - Django - 为管理员创建多对多内联对象,类似于 inlinetabular