[英]NDB many-to-many KeyProperty kind reference not working
我正在尝试使用App Engine中的KeyProperties将各种实体彼此链接:
class ModelA(ndb.Model):
mod_bs = ndb.KeyProperty(kind=ModelB, repeated=true)
mod_cs = ndb.KeyProperty(kind=ModelC, repeated=true)
# other properties
class ModelB(ndb.Model):
mod_as = ndb.StringProperty(kind=ModelA, repeated=true)
mod_cs = ndb.StringProperty(kind=ModelC, repeated=true)
# other properties
class ModelC(ndb.Model):
mod_cs = ndb.KeyProperty(kind=ModelA, repeated=true)
mod_as = ndb.KeyProperty(kind=ModelB, repeated=true)
# other properties
但是我收到一个错误消息,说在此结构中未定义“ ModelB”。 显然,下面引用的任何地方都无法识别。 因此,如果我摆脱了ModelA和ModelB中的种类分配,那么ModelC中的种类分配就很好了,一切都可以运行了。 不过,我需要循环引用它们,并且看起来应该可以。
难道我做错了什么?
在这种情况下,可以将类型作为字符串传递:
class ModelA(ndb.Model):
mod_bs = ndb.KeyProperty(kind='ModelB', repeated=true)
mod_cs = ndb.KeyProperty(kind='ModelC', repeated=true)
# other properties
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.