【发布时间】:2021-03-05 21:29:22
【问题描述】:
试图从我的谷歌云数据存储中获取实体,按键名过滤。不确定我在代码中做错了什么。
我创建我的数据存储区
const ds = new Datastore({
projectId: "my-project",
keyFilename: "./servicekey.json",
namespace: "client-dummy",
});
然后创建一个key进行过滤
const _key = ds.key({
namespace: "client-dummy",
path: ["transactions", data.id],
});
通过提供命名空间、种类和基于键的过滤器来创建我的查询。
const query = ds
.createQuery("client-dummy", "transactions")
.filter("__key__", _key);
最后运行查询
const result = await ds.runQuery(query);
但结果总是空的
[ [], { moreResults: 'NO_MORE_RESULTS', endCursor: 'CgA=' } ]
我尝试在 UI 上运行相同的查询并获得结果。我不知道代码有什么问题。有人可以帮忙吗?
【问题讨论】:
-
你确定这样的对象存在吗?
data.id是什么? -
是的,我确定。因为我在数据存储 UI 上进行了相同的查询并获得了预期的结果。 data.id 是正确的。我把它打印在控制台日志上。
标签: javascript node.js google-cloud-platform google-cloud-datastore