Google app engine GAE ndb查询!=标签
在文档中,它表示无法查询不包含等于特定值的标记的实体:Google app engine GAE ndb查询!=标签,google-app-engine,google-cloud-datastore,Google App Engine,Google Cloud Datastore,在文档中,它表示无法查询不包含等于特定值的标记的实体: 我有一组实体,每个实体都有一组标签。我需要找到那些没有特定标签的实体。ndb查询限制是否有解决方法?每次创建/更新实体时,都会根据其属性值更新其索引 如果属性不存在或列表属性不包含值(=本例中的标记),则索引中没有该属性的条目。因为查询依赖于索引来查找内容,所以不会找到它 这不是NDB查询限制,而是GAE数据存储限制,这意味着所有访问它的API都有此限制(Java/Python/Go、低级API等) 哎呀,没有直接的办法。您可以通过获取所有
我有一组实体,每个实体都有一组标签。我需要找到那些没有特定标签的实体。ndb查询限制是否有解决方法?每次创建/更新实体时,都会根据其属性值更新其索引 如果属性不存在或列表属性不包含值(=本例中的标记),则索引中没有该属性的条目。因为查询依赖于索引来查找内容,所以不会找到它 这不是NDB查询限制,而是GAE数据存储限制,这意味着所有访问它的API都有此限制(Java/Python/Go、低级API等) 哎呀,没有直接的办法。您可以通过获取所有文章,然后签入缺少标记的代码来绕过它,但这可能会根据文章的数量而付出高昂的代价
您可能需要创建一个新问题,并从应用程序的角度详细描述该问题:您试图实现的最终结果是什么?如果您的标记集很小,或者如果您要进行“无”查询的标记集很小,请添加“not_tags”属性(列表属性或“repeated=True”(如果使用ndb)属性)对实体也是如此。这将包含tags属性的倒数,或不包含子集的相应值。正如Peter在下面提到的,您将拥有一个可以查询的索引。如果您的标记集很大,这可能不起作用。