无模块命名flask.ext.wtf.SelectField
问题描述:
我发现flask-jquery-ajax-example,我试图用最新的库版本运行它:无模块命名flask.ext.wtf.SelectField
$ pip install flask flask-wtf wtforms
$ pip install -e ./
但是,我得到了导入错误:没有模块名为flask.ext。 wtf.SelectField同时启动脚本:
$ python bin/runserver.py
Traceback (most recent call last):
File "bin/runserver.py", line 2, in <module>
from fjae import run_dev_server
File "/home/mic/tmp/flask-jquery-ajax-example/fjae/__init__.py", line 3, in <module>
from fjae import views
File "/home/mic/tmp/flask-jquery-ajax-example/fjae/views.py", line 6, in <module>
from fjae.forms import VehicleForm
File "/home/mic/tmp/flask-jquery-ajax-example/fjae/forms.py", line 1, in <module>
from flask.ext.wtf import Form, SelectField
File "/home/mic/.virtualenvs/unisnp/lib/python2.7/site-packages/flask/exthook.py", line 87, in load_module
raise ImportError('No module named %s' % fullname)
ImportError: No module named flask.ext.wtf.SelectField
难道SelectField被新的方法取代?
答
该教程在大约2年内未更新。 Flask-WTF dropped support for field imports几个版本之前。您需要直接从WTForms中导入它们。
from wtforms import SelectField