3

私はdjangoでmongoengineを使用しています。モデルを含む 2 つのアプリケーションがあります。

app1/models.py:

from mongoengine import fields
from mongoengine.document import Document

class Model1(Document):
    name = fields.StringField()
    lists = fields.ListField(fields.ReferenceField("Model2", dbref=False))

app2/models.py:

from mongoengine import fields
from mongoengine.document import Document

class Model2(Document):
    name = fields.StringField()

すべてのアプリケーションが に追加されましたINSTALLED_APPS。django dev-server を使用すると、すべて問題ありません。しかし、uwsgi-server でこのコードを使用すると、エラーが発生します。

Model2 has not been registered in the document registry.
Importing the document class automatically registers it, has it
been imported?

どうすればいいですか?

4

1 に答える 1

1

app2.modelsどこかにインポートする必要があります。なぜそれがそこにあるのかというコメントをインポートに付けてください。

django dev サーバーが起動すると、インストールされているすべてのアプリからモデルがインポートされ、検証されます。わかるでしょ

Validating models... 
0 errors found

これは、本番環境では発生しません。これは、開発サーバーの優れた機能です。

于 2012-09-30T20:07:03.823 に答える