2012-05-09 5 views
2

とsyncdbの実行実行することはできません私はgithubのからdjango-nonreldjangotoolboxmongodbengineを取得し、setting.pyは以下の通りである:はジャンゴとMongoDBの

DATABASES = { 
    'default': { 
     'ENGINE': 'django_mongodb_engine', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 
     'NAME': 'admin',      # Or path to database file if using sqlite3. 
     'USER': '',      # Not used with sqlite3. 
     'PASSWORD': '',     # Not used with sqlite3. 
     'HOST': '',      # Set to empty string for localhost. Not used with sqlite3. 
     'PORT': '',      # Set to empty string for default. Not used with sqlite3. 
    } 
} 

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
) 

ROOT_URLCONF = 'ptl.urls' 

TEMPLATE_DIRS = ('/Users/bxshi/PycharmProjects/ptl/templates',) 

INSTALLED_APPS = (
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
) 

をそのsettings.py除いて、私は私のプロジェクトでは、他の.pyのファイルを持っていません。

私が得たエラーがあることである:私はmongodbengineについては、このエラーに関連する何かを見つける

BaoxuShis-MacBook:ptl bxshi$ python manage.py syncdb 
Creating tables ... 
Traceback (most recent call last): 
    File "manage.py", line 14, in <module> 
    execute_manager(settings) 
    File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 438, in execute_manager 
    utility.execute() 
    File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 379, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 191, in run_from_argv 
    self.execute(*args, **options.__dict__) 
    File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 220, in execute 
    output = self.handle(*args, **options) 
    File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 351, in handle 
    return self.handle_noargs(**options) 
    File "/Library/Python/2.7/site-packages/django/core/management/commands/syncdb.py", line 109, in handle_noargs 
    emit_post_sync_signal(created_models, verbosity, interactive, db) 
    File "/Library/Python/2.7/site-packages/django/core/management/sql.py", line 190, in emit_post_sync_signal 
    interactive=interactive, db=db) 
    File "/Library/Python/2.7/site-packages/django/dispatch/dispatcher.py", line 172, in send 
    response = receiver(signal=self, sender=sender, **named) 
    File "/Library/Python/2.7/site-packages/django/contrib/contenttypes/management.py", line 11, in update_contenttypes 
    content_types = list(ContentType.objects.filter(app_label=app.__name__.split('.')[-2])) 
    File "/Library/Python/2.7/site-packages/django/db/models/query.py", line 84, in __len__ 
    self._result_cache.extend(self._iter) 
    File "/Library/Python/2.7/site-packages/django/db/models/query.py", line 275, in iterator 
    for row in compiler.results_iter(): 
    File "build/bdist.macosx-10.7-intel/egg/djangotoolbox/db/basecompiler.py", line 335, in results_iter 
    File "build/bdist.macosx-10.7-intel/egg/djangotoolbox/db/basecompiler.py", line 430, in build_query 
    File "build/bdist.macosx-10.7-intel/egg/django_mongodb_engine/compiler.py", line 160, in add_filters 
    File "build/bdist.macosx-10.7-intel/egg/django_mongodb_engine/compiler.py", line 168, in add_filters 
ValueError: need more than 3 values to unpack 

、BBSのスレッドがそのことについて話したが、それは、これはすでに固定されていると言います。

+0

に公式のインストール手順を使用するかは、例えば使用していますbuildoutまたはvirtualenv?トレースバックから、djangotoolboxとdjango-mongodb-engineは 'build/... 'から使用されていますが、djangoは'/Library/...'から使用されているようです。 – jhonkola

+0

私はちょうどgithubからこれらのソース(Django Djangotoolboxなど)を入手し、それをインストールするために 'sudo python setup.py install'を使います。 'virutalenv'は使われませんでした。 '' python'をインストールするパスに 'Django1.4'がインストールされ、'/build/... 'にインストールされるものがあります。 – bxshi

+1

githubからDjango1.4リポジトリを使用した場合、これは動作しない可能性があります。 django-nonrel repoをクローンしてください。これに関する詳細については、https://groups.google.com/d/topic/django-non-relational/Hj6hmX_2KIA/discussionをご覧ください。 – jhonkola

答えて

1

は、単にあなたがジャンゴ・nonrelのプレーンなインストールを持っていますかhttps://django-mongodb-engine.readthedocs.org/en/latest/topics/setup.html

+0

公式ガイドのdjango-nonrelは古くなっています。タプルの挿入に関するいくつかの問題を引き起こす可能性があります。だから私はgithubで新しいものを見つける。私はそれを解決することができますかどうかを参照してくださいvirtualenvを使用してみましょう。 – bxshi

+0

まだ問題があります。おそらく私は自分の開発サーバーとしてlinuxを使用しようとします。 – bxshi

+0

彼らは時代遅れではありません。私がリンクした指示に従えば、完璧にうまくいくはずです。 –