python django-нет модуля psycopg2.расширение даже после установки скомпилированной версии psycopg2-2.4.5.с Win32-py2.7.исполняемый

Я использую python django в windows и пытаюсь развернуть его в heroku . Когда я попытался установить psycopg2 с помощью pip,

     pip install psycopg2 

Я получил ошибку :
не удалось найти vcvarsall.летучая мышь!--5--> Затем я обнаружил, что мне нужно установить visual studio 2008 (или) я могу напрямую загрузить и установить скомпилированную версию, поэтому downlaoded из этой ссылки :
http://www.lfd.uci.edu / ~gohlke / pythonlibs/
Именем я скачал : psycopg2-2.4.5.с Win32-py2.7.exe
Даже после установки этого я получаю ошибку: нет модуля с именем psycopg2.расширения

Итак, что мне еще делать ?

            D:mycodepythonmysite>heroku run python manage.py syncdb
            Running python manage.py syncdb attached to terminal... up, run.1
            Traceback (most recent call last):
              File "manage.py", line 10, in <module>
                execute_from_command_line(sys.argv)
              File "/app/.heroku/venv/lib/python2.7/site-                                packages/django/core/management/__i
            nit__.py", line 443, in execute_from_command_line
                utility.execute()
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__i
            nit__.py", line 382, in execute
                self.fetch_command(subcommand).run_from_argv(self.argv)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__i
            nit__.py", line 261, in fetch_command
                klass = load_command_class(app_name, subcommand)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__i
            nit__.py", line 69, in load_command_class
                module = import_module('%s.management.commands.%s' % (app_name, name))
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/utils/importlib.py"
            , line 35, in import_module
                __import__(name)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", line 8, in <module>
                from django.core.management.sql import custom_sql_for_model,                 emit_post_sync_
            signal
                              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/sql
            .py", line 6, in <module>
                from django.db import models
              File "/app/.heroku/venv/lib/python2.7/site-                packages/django/db/__init__.py", line 40, in <module>
                backend = load_backend(connection.settings_dict['ENGINE'])
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/__init__.py", line 34, in __getattr__
                return getattr(connections[DEFAULT_DB_ALIAS], item)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/utils.py", line92, in __getitem__
backend = load_backend(db['ENGINE'])
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/utils.py", line24, in load_backend
                return import_module('.base', backend_name)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/utils/importlib.py"
            , line 35, in import_module
                __import__(name)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py", line 13, in <module>
                from django.db.backends.postgresql_psycopg2.creation import DatabaseCreation

              File "/app/.heroku/venv/lib/python2.7/site-                                packages/django/db/backends/postgre
            sql_psycopg2/creation.py", line 1, in <module>
                import psycopg2.extensions
            ImportError: No module named psycopg2.extensions

            D:mycodepythonmysite>                            

в то время как isntalling psycopg2 и pip и easy_install, installdidnt работают, поскольку я получил эту ошибку : не удалось найти vcvarsall.bat с некоторым msg: нет ранее включенных режиссеров, соответствующих "docsrc_build"

спасибо

4 ответов


взгляните на http://slacy.com/blog/2010/09/python-unable-to-find-vcvarsall-bat/. Кажется, вам нужно установить Microsoft Visual Studio Express для решения vcvarsall.летучая мышь. Довольно сумасшедшая...


несмотря на некоторые претензии в Интернете, psycopg2 работает в VirtualEnv.

загрузите правильную версию win-psycopg2. Обычно я использую 32-битный Python 2.7, поэтому я получил psycopg2-2.4.5.с Win32-py2.7-pg9.1.3-релиз.исполняемый.

вы не можете установить этот файл в VirtualEnv, но вы можете переименовать его .EXE-файл для .zip и открыть с помощью утилиты, как 7-Zip. Вы получите папку под названием "psycopg2 "и файл под названием" psycopg2-2.4.5-py2.7.egg-info". Скопируйте эти в:

[...]\Envs\MyVirtualEnv\Lib\site-packages

Это сработало для меня, надеюсь, это сработает для вас.


двоичные файлы из этой ссылки: http://www.stickpeople.com/projects/python/win-psycopg/

In settings.py это должно выглядеть так в настройках db

    'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.

вы не можете установить этот файл в VirtualEnv, но вы можете переименовать его .EXE-файл для .zip и открыть с помощью утилиты, как 7-Zip. Вы получите папку под названием "psycopg2 "и файл под названием" psycopg2-2.4.5-py2.7.egg-info". Скопируйте их в: [...]\Envs\MyVirtualEnv\Lib\site-packages

Да, эта работа!