Node.JS数据存储区查询获取密钥

Rea*_*soN 8 google-app-engine node.js google-cloud-datastore

如何获取查询返回的实体的密钥?

我试图像普通数据一样访问它,但是当我打印实体本身时没有密钥.有没有办法这样做?

预先感谢您的帮助.

Séb*_*oix 21

从@ google-cloud/datastore v0.5.0版本0.5.0开始,密钥现在可由符号访问.

var datastore = require('@google-cloud/datastore')();
var query = datastore.createQuery('AnimalNamespace', 'Lion');
query.run(function(err, entities) {

var keys = entities.map(function(entity) {
        // datastore.KEY is a Symbol
        return entity[datastore.KEY];
    });
});
Run Code Online (Sandbox Code Playgroud)

您也可以使用gstore-node库(https://github.com/sebelga/gstore-node),然后直接通过entity.entityKey访问它.

  • 为什么这是互联网上唯一解释这一点的地方?数据存储文档中没有提及它,甚至更新示例也没有这样做,它们总是创建一个新密钥。我必须挖掘一个 5 年前的 SE 问题才能获得如此简单的信息,这似乎很荒谬……这是怎么回事? (4认同)