我使用以下查询从Google数据存储中检索某些实体:
var query = datastore.createQuery(namespace,tableName);
query.select(['displayName','username']);
datastore.getEntitySet(query,function(err,data){
if(err){
res.status(500).end();
}
else{
res.send(data);
}
});

如果我只选择一个属性,上面的代码就可以了。
query.select('username');

但是多次选择投掷412' Precondition Failed'错误。我的实体如下所示: Entity properties
答案 0 :(得分:1)
您需要创建一个多属性索引才能使用多属性查询。
由于您没有使用App Engine,因此需要手动创建这些索引。
我有一个涵盖此内容的教程here。
以下是步骤:
path/to/gcd.sh updateindexes --auth_mode=oauth2 .
path/to/gcd.cmd updateindexes --auth_mode=oauth2 .
几分钟后,应创建索引。