Ask*_*ken 14 python import flask wtforms flask-wtforms
我正在使用virtualenv来建立一个新项目.我在脚本文件夹中使用virtualenv pip安装了很多东西,如下所示:
flask\scripts\pip install Flask-WTF
Run Code Online (Sandbox Code Playgroud)
我没有在全局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)
Run Code Online (Sandbox Code Playgroud)
和其他软件包一样,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
Run Code Online (Sandbox Code Playgroud)
找到表单但不是TextField和BooleanField.这里有什么问题?
更新 我只看了一些Flask-WTF代码,发现了这个:
from flask.ext.wtf import Form
from wtforms.fields import TextField, BooleanField
from wtforms.validators import Required
Run Code Online (Sandbox Code Playgroud)
我使用的是旧版本的示例吗?
Ble*_*der 33
从版本0.9.0开始,Flask-WTF不会从wtforms导入任何内容,您需要从wtforms导入字段.
您需要从中导入它们wtforms(请注意,根据docsimport语句已更改):
from flask_wtf import Form
from wtforms import TextField, BooleanField
from wtforms.validators import Required
Run Code Online (Sandbox Code Playgroud)
Mah*_*gdy 10
我遇到了同样的问题并在安装 WTForms 2.3.3 后解决
pip install WTForms==2.3.3
from flask_wtf import FlaskForm
from flask_wtf import Form
from wtforms import TextField, BooleanField, TextAreaField
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15254 次 |
| 最近记录: |