是否可以使用新的firebase数据库firestore计算集合中有多少项?
如果是这样,我该怎么做?
在Firestore中,如何获取集合中的文档总数?
例如,如果我有
/people
/123456
/name - 'John'
/456789
/name - 'Jane'
Run Code Online (Sandbox Code Playgroud)
我想查询我有多少人并获得2.
我可以对/ people进行查询然后得到返回结果的长度,但这似乎是浪费,特别是因为我将在更大的数据集上执行此操作.
我正在尝试获取Cloud Firestore上存在的CollectionReference计数,我试图通过以下方式获取它:
FirebaseFirestore db = FirebaseFirestore.getInstance();
final CollectionReference postsCollection = db.collection("Posts");
final TaskCompletionSource<Integer> source = new TaskCompletionSource<>();
new Thread(new Runnable() {
@Override
public void run() {
int fromWhereToStart = postsCollection.get().getResult().size();
source.setResult(fromWhereToStart);
}
}).start();
Task<Integer> task = source.getTask();
task.addOnCompleteListener(new OnCompleteListener<Integer>() {
@Override
public void onComplete(@NonNull Task<Integer> task) {
Log.e("Z_fromWhereToStart", "= " + task.getResult());
}
});
Run Code Online (Sandbox Code Playgroud)
但不幸的是,我得到了:
java.lang.IllegalStateException: Task is not yet complete
Run Code Online (Sandbox Code Playgroud)
还有另一种方法来计算另一种修复方法IllegalStateException
吗?
java android illegalstateexception firebase google-cloud-firestore
我想获取 firestore 集合中的文档总数,我正在制作一个论坛应用程序,所以我想显示每个讨论中当前的评论量。有类似的事情db.collection("comments").get().lenght
或者类似的事情吗?
javascript firebase google-cloud-platform google-cloud-firestore