gpt4 book ai didi

java - 查询 Firestore 中集合中的不同字段

转载 作者:行者123 更新时间:2023-12-01 18:13:00 24 4
gpt4 key购买 nike

您好,我对 Firestore 和 android studio 相当陌生。我正在尝试查询文档中的两个不同字段,以便在 Firestore 的集合中获取该文档。在本例中,集合名称为 Dispatch_Records,集合中的文档包含一个自动 ID。文档中的两个字段是 driver_identityextra_driver_identity。如果当前用户 ID 等于该文档中 driver_identity extra_driver_identity 字段中的用户 ID,则查询应获取该文档。我注意到 Firestore 没有 OR 运算符。我该怎么做才能获取所需的文件?下面是代码:

 String user_id = firebaseAuth.getCurrentUser().getUid();

firebaseFirestore.collection("Dispatch_Records").whereEqualTo("driver_identity",user_id)
.whereEqualTo("extra_driver_identity",user_id)
.addSnapshotListener(Deployments.this,new EventListener<QuerySnapshot>() {
@Override
public void onEvent(@Nullable QuerySnapshot queryDocumentSnapshots, @Nullable FirebaseFirestoreException e) {

if(!queryDocumentSnapshots.isEmpty()){

for(DocumentChange doc: queryDocumentSnapshots.getDocumentChanges()){

if(doc.getType() == DocumentChange.Type.ADDED){


String dispatchId = doc.getDocument().getId();
DeploymentsConstructor deployment = doc.getDocument().toObject(DeploymentsConstructor.class).withId(dispatchId);
deploymentsList.add(deployment);
deploymentRecyclerAdapter.notifyDataSetChanged();


}

}




}

}
});

最佳答案

Firestore 支持 IN 运算符的 OR 运算符(检查 this )。在 Java API 中,这是 whereIn 方法。请查看引用here .

祝你好运!

关于java - 查询 Firestore 中集合中的不同字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60430061/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com