我有用户,存储在特定的唯一ID下。我需要通过某个属性来查询它们,但是当我的唯一ID是键的一部分时,我无法弄清楚该怎么做。
const user1 = {
id: 1,
name: 'John Smith',
cityId: 102,
};
const user1 = {
id: 2,
name: 'Rudy Black',
cityId: 102,
};
const upsertUser = user => {
const key = datastore.key([ 'users', user.id ]);
return datastore.upsert({ key, data: user });
});
const getUsersInCity = async cityId => {
const query = datastore.createQuery('users').filter('cityId', '=', cityId);
const [ users ] = await datastore.runQuery(query);
return users;
};
upsertUser(user1);
upsertUser(user2);
console.log(await getUsersInCity(102)); // Expected: John Smith, Rudy Black
一个示例代码,您可以尝试使用它通过ID查询值,它使用以下代码:
const key = this.datastore.key(['Customer', id:number]);
await this.datastore
.get(key)
.then(results => {
console.log(results);
})
.catch(err => { console.error('ERROR:', err); });
此代码来自文章Google DataStore Query By Nodejs。本文提供了一些很好的查询示例,您可以看一下。
我建议您看一下,并使用上面的代码作为起点。
让我知道信息是否对您有所帮助!