我正在学习GCP,并且已经搜索了文档。 Projection查询文档指出它们可以与过滤器一起使用,尽管有一些限制。据我了解,我不在限制范围之内,但仍然无法使其发挥作用。
我想做的是一个简单的
def
该属性被标记为已索引,我还部署了index.yaml。我的代码如下
Cell(…)
注释选择行时,查询有效。在对过滤器行进行注释时,它也可以工作,但是在同时运行这两者时,我在邮递员中收到以下消息。
SELECT property FROM kind WHERE enabled = TRUE
我的日志仅显示400状态错误。
任何帮助将不胜感激
编辑:
这是完整的代码。我有一个指示名称语言的参数。在数据库中,我具有nameEn和nameEs作为属性,因此我只想返回所选语言的名称。 enabled是一个布尔型属性,指示产品是否处于活动状态。
const selectQuery = programTypeQuery
.select(entityNameProperty)
.filter('enabled',true);
答案 0 :(得分:1)
根据您提供的详细信息,很难检测到此问题的起源。您可以将Google APIs Explorer用于Datastore API并尝试查询吗?我已根据您的描述准备了请求正文,您可以单击here并通过更改projectId来执行它。这样,您将收到成功的响应或一条包含详细信息的错误消息,可能更容易从此处检测根本原因。
答案 1 :(得分:0)
您很可能错过了composite index definition。您应该能够在stackdriver中查看GAE日志,以查看从Cloud Datastore返回的错误消息。
由于属性名称是动态的,因此您将无法有效使用复合索引。您可能需要将数据模型更改为不使用动态属性名称的内容。