python - AssertionError:视图函数映射正在覆盖现有端点函数:包装器
问题描述
如果我使用 Flask-JWT-Extended 的 3.25.0,一切都很好,但是当我使用最新版本时,我得到了这个错误
Traceback (most recent call last):
File "/usr/local/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/local/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.8/site-packages/flask/__main__.py", line 15, in <module>
main(as_module=True)
File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 967, in main
cli.main(args=sys.argv[1:], prog_name="python -m flask" if as_module else None)
File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 586, in main
return super(FlaskGroup, self).main(*args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/local/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/click/decorators.py", line 73, in new_func
return ctx.invoke(f, obj, *args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 848, in run_command
app = DispatchingApp(info.load_app, use_eager_loading=eager_loading)
File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 305, in __init__
self._load_unlocked()
File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 330, in _load_unlocked
self._app = rv = self.loader()
File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 392, in load_app
app = locate_app(self, import_name, None, raise_if_not_found=False)
File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 240, in locate_app
__import__(module_name)
File "/workspaces/HejBE/src/app.py", line 10, in <module>
from api import auth, user, channel, call, connection, expert, accounting # noqa: F401,E402
File "/workspaces/HejBE/src/api/user.py", line 23, in <module>
def get_user_details(user_id):
File "/usr/local/lib/python3.8/site-packages/flask/app.py", line 1315, in decorator
self.add_url_rule(rule, endpoint, f, **options)
File "/usr/local/lib/python3.8/site-packages/flask/app.py", line 98, in wrapper_func
return f(self, *args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/flask/app.py", line 1282, in add_url_rule
raise AssertionError(
AssertionError: View function mapping is overwriting an existing endpoint function: wrapper
一个名为 wrapper 的函数是否与另一个函数冲突?我的应用程序中没有这样的函数/端点,我使用的其他一些包如下:
- 点子
- 车轮
- 烧瓶
- Flask-JWT-扩展==4.0.2
- SQL炼金术
- Flask_SQLAlchemy
- Flask_Migrate
- 蒸馏器
- 皮茨
- google-api-python 客户端
- 事件
- pytest
- pytest-cov
- 火力基地管理员
- psycopg2-二进制
- 博托3
为什么?
解决方案
请务必仔细阅读 4.0.0 重大更改和升级指南:https ://flask-jwt-extended.readthedocs.io/en/stable/v4_upgrade_guide/ 。
您可能错过了那里的某些内容,例如仍在使用@jwt_required
而不是@jwt_required()
推荐阅读
- r - 如何使用 !!与 R 中的 replace_na 一起使用
- google-apps-script - 如何使用 Apps 脚本将来自 Gmail 的数据附加到 Google 表格的新列中?
- ios - 如何索引子数组以保持原始数组的顺序
- vuetify.js - Vuetify 更改页面显示在 Vuetify-2 数据表中
- git-submodules - 使用特定的提交号添加 git 子模块
- loops - LLVM 循环简化通行证
- css - 由于 url 中的引用,背景图像未加载
- python - flask runtime.lastError 和 404 服务图标
- postman - Postman 启动时出现空白屏幕
- selenium - 无法使用 nightwatch 单击按钮,因为按钮的底部边缘接触页脚并且没有滚动空间