2015-03-11 2 views
3

Я получаю сообщение об ошибке:"от SQLAlchemy события импорта" не работает

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 

Я работаю над Часть IV: База данных: http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-iv-database.

My 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 

ответ

4

Events were added к SQLAlchemy в версии 0.7. Вы используете версию 0.6.8. Модернизация исправит ваш ImportError.

pip install -U sqlalchemy 

Версия 0.7 была выпущена несколько лет назад. 0.9.9 является самым последним (на момент ответа). Если у вас нет конкретной потребности в 0,6, обновление должно стоить того.

0

Я пробовал 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 и все теперь работает.

Смежные вопросы