我无法导入 Flask-WTF 的 TextField 和 BooleanField。

8 浏览
0 Comments

我无法导入 Flask-WTF 的 TextField 和 BooleanField。

我正在使用virtualenv来设置一个新项目。我使用virtualenv pip从脚本文件夹中安装了很多东西,如下所示:

flask\scripts\pip install Flask-WTF

我在全局python文件夹中没有安装其他包。我的代码看起来像这样:

# 导入TextField和BooleanField不起作用...
from flask.ext.wtf import Form, TextField, BooleanField
from flask.ext.wtf import Required
class LoginForm(Form):
    openid = TextField('openid', validators=[Required()])
    remember_me = BooleanField('remember_me', default=False)

其他包(如sqlalchemy)也是在虚拟环境中安装的。

我收到的错误是:

(flask) D:\Development\grading>flask\Scripts\python.exe restserver.py Traceback (most recent call last):
File "restserver.py", line 1, in  from app import app
File "D:\Development\grading\app\__init__.py", line 12, in  from forms import LoginForm
File "D:\Development\grading\app\forms.py", line 1, in  from flask.ext.wtf import Form, TextField, BooleanField
File "D:\Development\grading\flask\lib\site-packages\flask\exthook.py", line 87, in load_module
raise ImportError('No module named %s' % fullname) ImportError: No module named flask.ext.wtf.TextField

Form可以找到,但是TextField和BooleanField找不到。这里有什么问题?

更新

我刚刚查看了一些Flask-WTF的代码,发现了这个:

from flask.ext.wtf import Form
from wtforms.fields import TextField, BooleanField
from wtforms.validators import Required

我是不是在使用旧版本的示例?

0