ndb.Expando 模型属性的控制索引

Control indexing for ndb.Expando model properties

我有一个 ndb.Model,其中包含一个 ndb.Expando 模型作为结构化 属性,我希望能够控制索引,但我在关于它的文档。

class MyModel2(ndb.Expando):
    pass

class MyModel(ndb.Model):
    sub_entity = ndb.StructuredProperty(MyModel2)

我能找到的唯一文档如下:

You can specify the usual property options for structured properties (except indexed)

我认为这是因为实际索引应该在嵌入式模型中按 属性 指定。但是,尚不清楚如何在 Expando 模型属性上启用或禁用索引。

您可以使用 _properties 对象来设置一个字段是否应该被索引。例如

a = MyModel2()
a.value = '3'
a._properties['value']._indexed = False

您可以在 _properties 上找到文档以获得更多详细信息。