3

私はdjangoプロジェクトに取り組んでおり、「mysql」と「neo4j」の2つのデータベースがあります。neo4djangoパッケージをインストールし、以下のようにsetting.pyを変更します。

設定.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'mylifetime',                     
        'USER': 'root',
        'PASSWORD': 'mypassword',
        'HOST': '',                      
        'PORT': '',
    }
}
NEO4J_DATABASES = {
    'default' : {
        'HOST':'localhost',
        'PORT':7474,
        'ENDPOINT':'/db/data'
    }
}

私のモデルには現在neo4jモデルしかありません:

models.py:

from neo4django.db import models


class User(models.NodeModel):
    ...
    #my User models ...
    ....
class Post(models.NodeModel):
    ...
    #my Post models
    ...

このコマンドpython manage.py syncdbを実行すると、エラーが発生しました:

$ python ../manage.py syncdb
Creating tables ...
AttributeError: 'super' object has no attribute 'db_type'

MySql モデルのみを使用すると、エラーは表示されず、テーブルは正常に作成されます。どこが間違っていますか?ありがとう

編集:私が書くとき、python manage.py syncdb --traceback私は以下を見ます:

Creating tables ...
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 222, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 255, in execute
    output = self.handle(*args, **options)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 385, in handle
    return self.handle_noargs(**options)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/syncdb.py", line 91, in handle_noargs
    sql, references = connection.creation.sql_create_model(model, self.style, seen_models)
  File "/usr/local/lib/python2.7/dist-packages/django/db/backends/creation.py", line 50, in sql_create_model
    col_type = f.db_type(connection=self.connection)
  File "/usr/local/lib/python2.7/dist-packages/neo4django-0.1.8-py2.7.egg/neo4django/utils.py", line 303, in __getattr__
    return getattr(target, name)
AttributeError: 'super' object has no attribute 'db_type'
4

2 に答える 2

3

--tracebackオプションを使用して、manage.py取得した例外の完全なスタック トレースを表示します。

于 2013-08-10T14:10:47.340 に答える