Python3.9 Flask应用报错:AttributeError: dominate.tags无input属性
解决Flask-Bootstrap与dominate版本不兼容的AttributeError问题
这个报错是因为Flask-Bootstrap旧版本依赖dominate中的tags.input方法,但dominate 2.4.0及以后版本为规避Python关键字冲突,把input改名为input_,导致旧版Flask-Bootstrap找不到该属性。
给你两个可行的解决办法:
- 安装兼容的dominate旧版本:直接指定安装dominate 2.3.1,这个版本仍保留
tags.input,能和旧版Flask-Bootstrap正常配合。执行命令:pip install dominate==2.3.1 - 适配新版dominate:如果不想降级dominate,可修改Flask-Bootstrap源码。找到报错文件
/usr/local/lib/python3.9/site-packages/flask_bootstrap/forms.py第51行,把tags.input替换成tags.input_即可。
另外,若你的Flask-Bootstrap版本较老,也可尝试升级到3.3.7.1及以上版本,这些版本已适配dominate的新命名:
pip install --upgrade flask-bootstrap
内容的提问来源于stack exchange,提问作者microk8s
相关产品推荐
相关产品推荐

