代码之家  ›  专栏  ›  技术社区  ›  Isaac Zahau

Android Studio-如何从FireStore的子集合获取文档?

  •  0
  • Isaac Zahau  · 技术社区  · 6 年前

    我想在子集合中获取文档,其中日期=日期,标题=文档中的标题。我使用日期和标题作为主键,以便显示子集合“公告”中文档的信息。在Android Studio中我该怎么做?

    还是使用不同的结构更好?

    谢谢!

    Image - Firestore Structure

    1 回复  |  直到 6 年前
        1
  •  0
  •   Alex Mamo    6 年前

    要解决此问题,请使用以下代码行:

    FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
    CollectionReference bulletinRef = rootRef.collection("bulletin");
    bulletinRef.whereEqualTo("date", date).whereEqualTo("title", title).get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
        @Override
        public void onComplete(@NonNull Task<QuerySnapshot> task) {
            if (task.isSuccessful()) {
                for (QueryDocumentSnapshot document : task.getResult()) {
                    Log.d(TAG, document.getString("title"));
                }
            } else {
                Log.d(TAG, "Error getting documents: ", task.getException());
            }
        }
    });
    

    您的logcat中的结果是,所有文档中的标题 bulletin 收集。