2014-02-12 28 views
2

我看不到我要出錯的地方。我安裝了最新的WTF表單,但仍然出現此錯誤。導入Flask WTF表單時導入錯誤

方法:

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

結果:

Traceback (most recent call last): 

    File "/bin/user_wsgi_wrapper.py", line 67, in __call__ 
self.error_log_file.logger.exception("Error running WSGI application") 
    File "/usr/lib/python3.3/logging/__init__.py", line 1269, in exception 
self.error(msg, *args, **kwargs) 
    File "/usr/lib/python3.3/logging/__init__.py", line 1262, in error 
self._log(ERROR, msg, args, **kwargs) 
    File "/usr/lib/python3.3/logging/__init__.py", line 1368, in _log 
self.handle(record) 
    File "/usr/lib/python3.3/logging/__init__.py", line 1377, in handle 
if (not self.disabled) and self.filter(record): 
File "/usr/lib/python3.3/logflask_wtf 
wtformsging/__init__.py", line 687, in filter 
for f in self.filters: 
File "/bin/user_wsgi_wrapper.py", line 59, in __call__ 
app_iterator = self.app(environ, start_response) 
File "/bin/user_wsgi_wrapper.py", line 73, in import_error_application 
raise e 
File "/bin/user_wsgi_wrapper.py", line 82, in <module> 
application = load_wsgi_application() 
File "/bin/user_wsgi_wrapper.py", line 78, in load_wsgi_application 
return __import__(os.environ['WSGI_MODULE'], globals(), locals(),  ['application']).application 
File "/var/www/rcham_pythonanywhere_com_wsgi.py", line 16, in <module> 
from addressbook.app import app as application 
File "/home/rcham/mysite/addressbook/app.py", line 4, in <module> 
from addressbook.forms import LoginForm, ContactsForm 
File "/home/rcham/mysite/addressbook/forms.py", line 1, in <module> 
from flask.ext.wtf import Form 
File "/usr/local/lib/python3.3/dist-packages/flask/exthook.py", line 87, in load_module 
raise ImportError('No module named %s' % fullname) 
ImportError: No module named flask.ext.wtf 

LS /home/rcham/.local/lib/python2.7/site-packages/flask

__init__.py blueprints.py debughelpers.py globals.pyc logging.pyc signals.pyc views.py 
__init__.pyc blueprints.pyc debughelpers.pyc helpers.py module.py templating.py views.pyc 
_compat.py config.py ext helpers.pyc module.pyc templating.pyc wrappers.py 
_compat.pyc config.pyc exthook.py json.py sessions.py testing.py wrappers.pyc 
app.py ctx.py exthook.pyc json.pyc sessions.pyc testing.pyc 
app.pyc ctx.pyc globals.py logging.py signals.py testsuite 

LS /usr/local/lib/python3.3/dist-packages/ | grep的跆拳道

flask_wtf wtforms

+1

你是如何安裝的燒瓶跆拳道改變了嗎?你的代碼很好,這可能是一個環境問題。 – iurisilvio

+0

你可以發佈'ls/usr/local/lib/python3.3/dist-packages/flask'和'ls /usr/local/lib/python3.3/dist-packages/ | grep wtf'? – brunsgaard

+0

ls /home/rcham/.local/lib/python2.7/site-packages/flask __init__.py blueprints.py debughelpers.py globals.pyc logging.pyc signals.pyc views.py __init __。pyc blueprints.pyc debughelpers.pyc helpers.py module.py templating.py views.pyc _compat.py config.py ext helpers.pyc module.pyc templating.pyc wrappers.py _compat.pyc config.pyc exthook.py json.py會話。 py testing.py wrappers.pyc app.py ctx.py exthook.pyc json.pyc sessions.pyc testing.pyc app.pyc ctx.pyc globals.py logging.py signals.py testsuite – Lorbat

回答

3

按照official quickstartflask.ext.wtf應該flask_wtf

所以,你必須導入爲:

from flask_wtf import FlaskForm 

至少我有,我從PIP安裝。

+0

試過,以及那不工作 – Lorbat

+0

如果你是你唱一個腳本來運行你的代碼(例如run.py),檢查你正在運行正確的python版本:「which python」或「which python3」。如果你使用的是virtualenv,請確保你運行了它。 – Inyoka

2

看起來你只安裝了wtforms,不Flask-WTF擴展。

要安裝Flask-WTFpip install flask-wtf

+0

我已經安裝Flask-WTF – Lorbat

4

請使用

from flask_wtf import Form 

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

這已自V0.8