1

Я пытаюсь следовать по документу Googles, вот проблема, с которой я сталкиваюсь. Согласно документу here, когда я получить объект, как этотКлюч объекта и свойства данных, не определенные при извлечении из локального хранилища данных

var key = datastore.key(['Company', 'Google']); 

datastore.get(key, function(err, entity) { 
// entity.data = The record. 
// entity.key = The key. 
}); 

я должен получить объект сущности с ключом и данными свойствами. Это не то, что я получаю. Вот моя функция чтения

function read(kind, id, cb) { 
    var key = datastore.key([kind, parseInt(id, 10)]); 
    datastore.get(key, (err, entity) => { 
    if(err) { 
     return cb(err); 
    } 

    if(!entity) { 
     return cb({ 
      code: 404, 
      message: 'Not found' 
     }); 
    } 
    cb(null, entity.data); 
}); 

}

Ни данные или ключ определены. Вместо этого, устаревший объект выглядит следующим образом

{ 
    "age": 23, 
    "name": "Hello World" 
} 

Это, очевидно, только данные. Что я делаю не так? Я работаю на gcloud датастор эмуляторе

Вот моя зависимость, если оно соответствует

"dependencies": { 
    "async": "^2.0.1", 
    "body-parser": "^1.15.2", 
    "express": "^4.14.0", 
    "google-cloud": "^0.43.0", 
    "yargs": "^5.0.0" 
} 

ответ

5

С @ Google облако/хранилищу v0.5.0 ключ является доступным от Symbol.

var datastore = require('@google-cloud/datastore')(); 

var key = datastore.key(['Company', 'Google']); 

datastore.get(key, function(err, entity) { 
    var key = entity[datastore.KEY]; 
}); 

Конечно, вы всегда можете использовать gstore-узел (Ограничение: Я владелец этой библиотеки), а затем вы просто получить доступ к этому entity.entityKey.

+0

спасибо, это работает. Но я должен сказать, что я действительно разочарован этим. Они не могли обновить свои документы? – kidustiliksew

+0

Да, я обнаружил это, потому что он сломал узел gstore и должен был изучить их фиксацию. –

+0

На самом деле они обновили запрос query.run (функцию (ERR, лица) { ключей вара = entities.map (функция (лица) { возвращаемого лица [datastore.KEY]; }); }); –

Смежные вопросы