我无法导入FlaskWTF TextField和BooleanField

2024-09-27 00:20:51 发布

您现在位置:Python中文网/ 问答频道 /正文

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

flask\scripts\pip install Flask-WTF

全局python文件夹中没有安装其他包。我的代码如下:

# Importing TextField and BooleanField is not working...
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 <module> from app import app
File "D:\Development\grading\app\__init__.py", line 12, in <module> from forms import LoginForm
File "D:\Development\grading\app\forms.py", line 1, in <module> 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

找到表单,但未找到TextField和BooleanField。这里有什么问题?

更新 我刚查了一些瓶子的WTF代码,发现了这个:

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

我是在用老版本的例子还是别的什么?


Tags: infrompyimportformflasklineext
1条回答
网友
1楼 · 发布于 2024-09-27 00:20:51

From version 0.9.0, Flask-WTF will not import anything from wtforms, you need to import fields from wtforms.

Source

您需要从wtforms导入它们(请注意,根据^{}import语句已更改):

from flask_wtf import Form

from wtforms import TextField, BooleanField
from wtforms.validators import Required

相关问题 更多 >

    热门问题