[英]information of the user doesn't show in recyclerview in getting a specific value in a collection if firestore
[英]The order wont appear when getting a specific value in a collection in firestore
我正在开发电子商务应用程序的项目,我正在尝试显示用户在 recyclerview 中添加的订单列表
我遇到的问题是用户的所有详细信息都出现了,除了用户添加的订单没有出现,并且在我运行应用程序时没有出现错误
已订购的用户详细信息和项目的集合
我使用的代码
private void orderList() {
final List<List<DocumentSnapshot>> productOrder = new ArrayList<>();
FirebaseFirestore db = FirebaseFirestore.getInstance();
CollectionReference userCartOrder = db.collection("UserOrder").document().collection("cartID");
CollectionReference userCartID = db.collection("ItemOrder");
Query query = userCartID.whereEqualTo("cartID",userCartOrder);
query.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()){
for (QueryDocumentSnapshot documentSnapshot: task.getResult()){
CollectionReference cartOrderID = documentSnapshot.getReference().collection("itemList");
cartOrderID.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()){
productOrder.add(task.getResult().getDocuments());
}
}
});
}
}
else {
Toast.makeText(AdminOrderActivity.this, "Query failed", Toast.LENGTH_SHORT).show();
}
}
});
}
问题就像那里:
CollectionReference userCartOrder = db.collection("UserOrder").document().collection("cartID");
当您调用不带任何参数的document()
时,它会生成对新的、唯一的、不存在的文档的引用。 将其传递给查询,将不会返回任何订单,因为文档不存在。
如果要查询特定ItemOrder
的cartID
,则需要将该购物车 ID 传递给查询。 例如:
Query query = userCartID.whereEqualTo("cartID", "220225073844244");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.