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

时间:2018-05-15 15:14:12

标签: python google-app-engine google-cloud-datastore

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

class MyModel2(ndb.Expando):
    pass

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

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

  

您可以为结构化属性指定常用属性选项   (索引除外)

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

1 个答案:

答案 0 :(得分:4)

您可以使用_properties对象设置是否应对字段编制索引。 E.g。

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

您可以在_properties上找到有关详细信息的文档。