如何使ndb模型声明顺序独立
how to make ndb model declarations order independent
我刚开始使用 python 和应用引擎。我试过像这样实现一些 ndb 模型:
class A(ndb.Model):
some_property = ndb.KeyProperty(B , required=True)
class B(ndb.Model):
some_other_property = ndb.KeyProperty(A , required=True)
当然你不会在生产中做这样的事情,因为它是一个非常糟糕的设计,但它确实说明了问题。
此代码失败,因为定义 some_property
时,B 尚未定义。
问题是我如何让 类 相互引用,而不考虑声明的顺序?
将 class 个名称之一转换为字符串:
class A(ndb.Model):
some_property = ndb.KeyProperty('B' , required=True)
class B(ndb.Model):
some_other_property = ndb.KeyProperty(A , required=True)
我刚开始使用 python 和应用引擎。我试过像这样实现一些 ndb 模型:
class A(ndb.Model):
some_property = ndb.KeyProperty(B , required=True)
class B(ndb.Model):
some_other_property = ndb.KeyProperty(A , required=True)
当然你不会在生产中做这样的事情,因为它是一个非常糟糕的设计,但它确实说明了问题。
此代码失败,因为定义 some_property
时,B 尚未定义。
问题是我如何让 类 相互引用,而不考虑声明的顺序?
将 class 个名称之一转换为字符串:
class A(ndb.Model):
some_property = ndb.KeyProperty('B' , required=True)
class B(ndb.Model):
some_other_property = ndb.KeyProperty(A , required=True)