如何使用节点获取数据存储中最后插入的实体ID?
Doc说插入如下:
datastore.insert(entity)
.then(result) => {
// Task inserted successfully.
});
从这里,检查返回的result
对象,
我找到的唯一方法是像这样穿过对象
result[0].mutationResults[0].key.path[0].id
这似乎很脆弱且不可靠。如果将来返回的对象的结构中断,应用程序会中断。
这是在节点中执行此操作的正确方法吗?
答案 0 :(得分:1)
我相信我可能已回答了我自己的问题。
在then
回调中,我确实必须result[0].mutationResults[0].key.path[0].id
但是,我也可以定位实体,如此
const userEntity = {
email: 'foo@foo.com',
passwd: 'secret'
}
ds.insert(userEntity)
.then(result) => {
return userEntity.key.id
// or, result[0].mutationResults[0].key.path[0].id
}