2

virtualenv、django-nonrel、djangotoolbox、およびdjango_mongodb_engineの最新バージョンがあります。virtualenv は -no-site-packages で作成されました。

クイック スタートに従おうとしましたが、syncdb を実行しようとすると次のエラーが表示されます

Traceback (most recent call last):
  File "C:\www\environments\mongotest\djangomongo\manage.py", line 11, in <
module>
    execute_manager(settings)
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\core\managem
ent\__init__.py", line 438, in execute_manager
    utility.execute()
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\core\managem
ent\__init__.py", line 379, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\core\managem
ent\__init__.py", line 261, in fetch_command
    klass = load_command_class(app_name, subcommand)
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\core\managem
ent\__init__.py", line 67, in load_command_class
    module = import_module('%s.management.commands.%s' % (app_name, name))
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\utils\import
lib.py", line 35, in import_module
    __import__(name)
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\core\managem
ent\commands\syncdb.py", line 7, in <module>
    from django.core.management.sql import custom_sql_for_model, emit_post_sync_
signal
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\core\managem
ent\sql.py", line 5, in <module>
    from django.contrib.contenttypes import generic
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\contrib\cont
enttypes\generic.py", line 6, in <module>
    from django.db import connection
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\db\__init__.
py", line 77, in <module>
    connection = connections[DEFAULT_DB_ALIAS]
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\db\utils.py"
, line 91, in __getitem__
    backend = load_backend(db['ENGINE'])
  File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\db\utils.py"
, line 49, in load_backend
    raise ImproperlyConfigured(error_msg)
django.core.exceptions.ImproperlyConfigured: 'django_mongodb_engine' isn't an av
ailable database backend.
Try using django.db.backends.XXX, where XXX is one of:
    'dummy', 'mysql', 'oracle', 'postgresql', 'postgresql_psycopg2', 'sqlite3'
Error was: No module named django_mongodb_engine.base

私の環境のdjango-nonrelインストールではなく、デフォルトのdjangoインストールを使用しようとしているようです。

set PYTHONPATH=%PYTHONPATH%;C:\path\to\env\Lib\site-packages\django を追加しようとしましたが、変更はありません。

ここでデフォルトのdjangoインストールが使用されている理由はありますか?

4

3 に答える 3

2

問題は、Windows でのファイルの関連付けにありました。デフォルトのWindows pythonインストールを使用した「manage.py syncdb」を介してsyncdbを試みていました。「python manage.py syncdb」を使用すると、正しい python と環境が使用されました。

于 2010-12-06T21:30:41.400 に答える
1

実行してみましたactivate.batか?

また、PYTHONPATH の設定は機能するはずですが、最初に新しいパスを挿入する必要があり、django 自体ではなく、django のインストールを含むディレクトリへのパスにする必要があります。

set PYTHONPATH=C:\path\to\env\Lib\site-packages\;%PYTHONPATH%
于 2010-12-05T06:41:06.777 に答える
0

これがこの問題に対する私の2セントです:

PyDevをEclipseプラグインとして使用し、新しいプロジェクトで使用する新しいインタープリターを指定するだけで、この問題が解決します。

于 2012-02-24T10:36:27.233 に答える