Python MongoEngine架构-名称错误

Python MongoEngine架构-名称错误,python,mongodb,mongoengine,Python,Mongodb,Mongoengine,我在一个名为model.py的文件中有以下模式 from mongoengine import * class Subject(Document): uri = StringField(required=True) resources = ListField(ReferenceField(ResourceSubject)) class ResourceSubject(Document): subject = ReferenceField(Subject,reverse

我在一个名为model.py的文件中有以下模式

from mongoengine import *

class Subject(Document):
    uri = StringField(required=True)
    resources = ListField(ReferenceField(ResourceSubject))

class ResourceSubject(Document):
    subject = ReferenceField(Subject,reverse_delete_rule=CASCADE)
    resource = ReferenceField(Resource)

class Resource(EmbeddedDocument):
    uri = StringField()
    title = StringField()
    snippet = StringField()
    image = StringField()
    source = StringField()
    adapter = StringField()
由于某种原因,当我尝试初始化一个主题时,
subc=Subject(uri=“hello”).save()
我得到一个名称错误:
namererror:name'ResourceSubject'未定义

我不明白原因,我猜这与框架有关?我尝试将各个文件中的类分离,然后导入,但仍然出现相同的错误。我错过了什么

这一行抛出错误:
resources=ListField(ReferenceField(ResourceSubject))

ResourceSubject
置于引号中:


那很快。。。在本教程中,不使用引号@Giannis是的,但由于这是一个双向引用,所以两个模型都需要相互定义。在本例中,以字符串形式提供模型名称是一种方法。
resources = ListField(ReferenceField('ResourceSubject'))