Node.js 在google数据存储中应用过滤器后获取不同的项

Node.js 在google数据存储中应用过滤器后获取不同的项,node.js,google-app-engine,google-cloud-datastore,Node.js,Google App Engine,Google Cloud Datastore,我一直在尝试使用以下查询在google数据存储中使用筛选器获取不同的项: var query = datastore.createQuery('Todo') query.groupBy(['completed']); query.filter('title', 'abc'); query.run(function (err, items) { console.log(err, items) if (err) { callback(err); return; }

我一直在尝试使用以下查询在google数据存储中使用筛选器获取不同的项:

var query = datastore.createQuery('Todo')
query.groupBy(['completed']);

query.filter('title', 'abc');
query.run(function (err, items) {
  console.log(err, items)
  if (err) {
    callback(err);
    return;
  }

  callback(null, items.map(entityToTodo));
});
我得到了这个错误:

{ [Error: Precondition Failed] code: 412, metadata: Metadata { _internal_repr: {} } } undefined  

有什么方法可以得到想要的结果吗?

我模糊地记得,查询应该按字段及其分组排序。在运行查询之前,请尝试添加“query.order('completed');”