ImportError:没有名为flask.ext.sqlalchemy的模块,没有解决方案正常工作

时间:2016-03-24 21:47:21

标签: flask flask-sqlalchemy

我在运行代码时遇到了麻烦。 我做了:

from flask_sqlalchemy import SQLAlchemy

它一直说:ImportError:没有名为flask.ext.sqlalchemy的模块

我遵循了本教程:http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world

它不仅为sqlalchemy而且还为我们带来了很多导入错误:

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

以上所有导入都会导致导入错误。 我已经检查了所有关于堆栈溢出的类似问题,并尝试所有解决方案,但它们不起作用。有人能帮助我吗?提前谢谢。

这是错误消息:

/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5    /Users/Mia/Documents/workspace/Assignment3.2/run.py
Traceback (most recent call last):
  File "/Users/Mia/Documents/workspace/Assignment3.2/run.py", line 1, in <module>
from app import app
File "/Users/Mia/Documents/workspace/Assignment3.2/app/__init__.py", line 2, in <module>
from flask_sqlalchemy import SQLAlchemy
ImportError: No module named 'flask_sqlalchemy'

当我在项目目录中检查python的版本时,我觉得这很奇怪,它是2.7。但上面显示的是3.5。这会导致问题吗?

1 个答案:

答案 0 :(得分:2)

你没有从virtualenv运行。请注意traceback中的Python二进制文件的路径:/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5,系统Python。

激活virtualenv,然后运行程序。

source ./flask/bin/activate
python run.py

或者,按照教程并将正确的可执行指令添加到脚本的顶部,然后直接执行脚本(在用chmod +x ./run.py标记可执行文件后)。

#!flask/bin/python
from app import app
app.run(debug=True)
./run.py