【问题标题】:Performing a GCP query specifying a namespace执行指定命名空间的 GCP 查询
【发布时间】:2020-12-04 20:19:10
【问题描述】:

我刚刚开始了解有关我正在从事的项目的更多信息。原来它使用 GCP 数据存储。我去了实体管理界面。我创建了一个新的命名空间并在其中添加了一个实体。在我们的打字稿后端,我编写了一个模仿 node.js 示例的函数。但是,我不知道如何查询新命名空间或任何命名空间(默认命名空间除外)。我找到了一些提到命名空间的文档,但似乎都不适用于我的案例。有人知道我如何查询数据存储区中的特定命名空间吗?

async function listReviews( brand, sku ) {

  const query = datastore.createQuery('Review').order('createdOn');

  console.log('query: ', query);

  const [reviews] = await datastore.runQuery(query);
  
  for (const review of reviews) {
    const reviewKey = review[datastore.KEY];
    console.log(reviewKey.id, review);
  }
}

【问题讨论】:

  • 我刚刚发现如果我删除查询变量上的 const 限定符,我可以修改变量的 .namespace 属性并将其设置为我想要的任何值。我得到它来正确查询我想要的实体类型的命名空间,以及这些类型的每个实体的数据。我敢打赌有更好的方法来做到这一点,但我还没有找到。

标签: typescript google-cloud-platform namespaces google-cloud-datastore datastore


【解决方案1】:

原来对 createQuery 的调用需要一个可选的前导参数...即:

datastore.createQuery(命名空间,种类)

命名空间的默认值必须是 [default] 命名空间。

【讨论】:

    猜你喜欢
    • 2015-04-11
    • 1970-01-01
    • 1970-01-01
    • 2012-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多