【问题标题】:"from sqlalchemy import event" not working“从 sqlalchemy 导入事件”不起作用
【发布时间】:2015-03-11 22:42:20
【问题描述】:

我收到一个错误:

MacBook-Pro:microblog_3 olehdubno$ python db_create.py 
Traceback (most recent call last):
  File "db_create.py", line 5, in <module>
    from app import db
  File "/Users/olehdubno/Desktop/microblog_3/app/__init__.py", line 2, in <module>
    from flask.ext.sqlalchemy import SQLAlchemy
  File "/usr/local/lib/python2.7/site-packages/flask/exthook.py", line 81, in load_module
    reraise(exc_type, exc_value, tb.tb_next)
  File "/usr/local/lib/python2.7/site-packages/flask_sqlalchemy/__init__.py", line 24, in <module>
    from sqlalchemy import orm, event
ImportError: cannot import name event   

我正在处理第四部分:数据库:http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-iv-database

我的github代码:https://github.com/odubno/microblog.

无论我做什么,我都无法导入事件。简单地尝试from sqlalchemy import event 也不起作用。

Flask==0.10.1
Flask-Restless==0.17.0
Flask-SQLAlchemy==2.0
Flask-WTF==0.11
GraphLab-Create==1.1
Jinja2==2.7.3
MarkupSafe==0.23
Pillow==2.7.0
SQLAlchemy==0.6.8
Tempita==0.5.2
WTForms==2.0.2
Werkzeug==0.10.1
argparse==1.2.1
backports.ssl-match-hostname==3.4.0.2
blaze==0.6.0
boto==2.33.0
daemonize==2.3.1
decorator==3.4.0
folium==0.1.2
geopy==1.4.0
george==0.2.1
ggplot==0.6.5
itsdangerous==0.24
librato-metrics==0.4.9
mimerender==0.5.5
mixpanel-py==3.1.1
nltk==3.0.0
nose==1.3.4
numpy==1.8.2
oauthlib==0.7.2
pandas==0.14.1
patsy==0.3.0
prettytable==0.7.2
psycopg2==2.5.4
pyparsing==2.0.3
pyshp==1.2.1
python-dateutil==2.4.1
python-mimeparse==0.1.4
pytz==2014.7
requests==2.3.0
requests-oauthlib==0.4.2
scikit-learn==0.15.1
six==1.9.0
sqlalchemy-migrate==0.7.2
suds==0.4
sympy==0.7.5
textblob==0.9.0
tornado==3.2.1
twitter==1.15.0
vboxapi==1.0
virtualenv==1.11.6
wsgiref==0.1.2
xlrd==0.9.3
xlwt==0.7.5

【问题讨论】:

    标签: python flask sqlalchemy flask-sqlalchemy


    【解决方案1】:

    Events were added 到 0.7 版中的 SQLAlchemy。您使用的是 0.6.8 版。升级将修复您的ImportError

    pip install -U sqlalchemy
    

    0.7 版是几年前发布的。 0.9.9 是最新的(在此答案时)。除非您特别需要 0.6,否则升级应该是值得的。

    【讨论】:

      【解决方案2】:

      我尝试了pip install -U sqlalchemy,但奇怪的是它仍然没有解决问题。

      什么有效但我忘了使用 virtualenv。

      一旦我在终端中激活了我的 virtualenv,使用:

      $ virtualenv venv --distribute
      New python executable in venv/bin/python
      Installing distribute.........done.
      Installing pip................done.
      $ source venv/bin/activate
      (venv)$ python
      

      我跟进了:

      pip install sqlalchemy
      

      按照教程,我在 virtualenv 中安装了其余的扩展,现在一切正常。

      【讨论】:

        猜你喜欢
        • 2016-04-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-21
        • 1970-01-01
        • 2015-07-27
        • 2019-12-16
        相关资源
        最近更新 更多