Datastore 使用 Node 获取最后插入的 ID
Datastore get last inserted id with Node
如何使用节点获取数据存储中最后插入的实体的 ID?
文档说要这样插入:
datastore.insert(entity)
.then(result) => {
// Task inserted successfully.
});
据此,检查返回的 result
对象,
我找到的唯一方法是像这样穿过对象
result[0].mutationResults[0].key.path[0].id
这看起来很脆弱且不可靠。如果将来返回的对象的结构中断,则应用程序中断。
这是在节点中执行此操作的正确方法吗?
我想我可能已经回答了我自己的问题。
在 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
}
如何使用节点获取数据存储中最后插入的实体的 ID?
文档说要这样插入:
datastore.insert(entity)
.then(result) => {
// Task inserted successfully.
});
据此,检查返回的 result
对象,
我找到的唯一方法是像这样穿过对象
result[0].mutationResults[0].key.path[0].id
这看起来很脆弱且不可靠。如果将来返回的对象的结构中断,则应用程序中断。
这是在节点中执行此操作的正确方法吗?
我想我可能已经回答了我自己的问题。
在 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
}