Edw*_*rdr 4 python import class
我正在使用ODM库,并且当它们相关时,我将文档定义为同一模块中的类.我遇到了一个循环依赖问题,因为我之前在Python中没有遇到过这个问题,我不知道如何告知类别彼此的存在.例:
''' docs.py '''
from mongoengine import Document
from mongoengine.fields import StringField, ReferenceField, ListField
class Base(Document):
some_field = StringField()
class Foo(Base):
other_field = StringField()
another_field = ReferenceField(Bar)
class Bar(Base):
other_field = StringField()
another_field = ListField(ReferenceField(Foo))
Run Code Online (Sandbox Code Playgroud)
就目前而言,Python将抛出一个NameError因为Bar当解释器在类中的文件中获取对它的引用时没有定义Foo.我如何告诉Python不要担心,并且类定义将很快出现?
ReferenceField 也接受类名.
another_field = ReferenceField('Bar')
Run Code Online (Sandbox Code Playgroud)