Вопрос

Я пытаюсь использовать SQLAlchemy под virtualenv в OS X 10.5, но, похоже, не могу заставить его загружаться вообще.

Вот что я сделал

mkvirtualenv --no-site-packages test
easy_install sqlalchemy

Я пытаюсь импортировать sqlalchemy из интерпретатора, и все работает нормально, но если я пытаюсь импортировать sqlalchemy из скрипта python, я получаю следующую ошибку:

Вот обучающий скрипт из IBM

from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Table, Column, Integer, String, MetaData, ForeignKey

Base = declarative_base()
class Filesystem(Base):
    __tablename__ = 'filesystem'

    path = Column(String, primary_key=True)
    name = Column(String)

    def __init__(self, path,name):
        self.path = path
        self.name = name

    def __repr__(self):
        return "<Metadata('%s','%s')>" % (self.path,self.name)

Я пытаюсь запустить 'python test.py' и это результат:

$ python test.py 
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    from sqlalchemy import Table, Column, Integer, String, MetaData, ForeignKey
  File "/Users/grant/Development/Aircraft/sqlalchemy.py", line 3, in <module>
    from sqlalchemy.ext.declarative import declarative_base
ImportError: No module named ext.declarative

Вот что находится в моей системе.path

>>> import sys
>>> print '\n'.join(sys.path)

/Users/grant/Development/Python/test/lib/python2.6/site-packages/setuptools-0.6c9-py2.6.egg
/Users/grant/Development/Python/test/lib/python2.6/site-packages/SQLAlchemy-0.5.4p2-py2.6.egg
/Users/grant/Development/Python/test/lib/python26.zip
/Users/grant/Development/Python/test/lib/python2.6
/Users/grant/Development/Python/test/lib/python2.6/plat-darwin
/Users/grant/Development/Python/test/lib/python2.6/plat-mac
/Users/grant/Development/Python/test/lib/python2.6/plat-mac/lib-scriptpackages
/Users/grant/Development/Python/test/lib/python2.6/lib-tk
/Users/grant/Development/Python/test/lib/python2.6/lib-old
/Users/grant/Development/Python/test/lib/python2.6/lib-dynload
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-darwin
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages
/Users/grant/Development/Python/test/lib/python2.6/site-packages

Есть какие-нибудь идеи о том, что происходит??

Это было полезно?

Решение

Я сам устранил свою проблему...У меня был другой скрипт с именем sqlalchemy.py в той же папке, в которой я работал, который все испортил.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top