引入flask_cache时出现ModuleNotFoundError: No module named 'flask.ext'

环境:

  • centos 7.3
  • python 3.6
  • flask 1.0.2
  • flask-cache 0.13.1

引入flask_cache后运行时,出现以下错误

Traceback (most recent call last):
  File "manager.py", line 5, in <module>
    app = create_app('pro')
  File "./app/__init__.py", line 18, in create_app
    cache.init_app(app, config=cache_config)
  File "/prj/pro/x.groooo.com/.venv/lib/python3.6/site-packages/flask_cache/__init__.py", line 156, in init_app
    from .jinja2ext import CacheExtension, JINJA_CACHE_ATTR_NAME
  File "/prj/pro/x.groooo.com/.venv/lib/python3.6/site-packages/flask_cache/jinja2ext.py", line 33, in <module>
    from flask.ext.cache import make_template_fragment_key
ModuleNotFoundError: No module named 'flask.ext'
unable to load app 0 (mountpoint='') (callable not found or import error)

原因是新版本的flask插件已经不再使用 flask.ext.*形式

修改/site-packages/flask_cache/jinja2ext.py
from flask.ext.cache import make_template_fragment_key

from flask_cache import make_template_fragment_key

    原文作者:1lin24
    原文地址: https://www.jianshu.com/p/c3522814f713
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞