簡體   English   中英

從 Firestore 參考中讀取數據

[英]Read data from Firestore reference

我有這樣的數據結構:

/Admin/Dashboard/MRmZh9mixve1CV3M0EI8wfyDnb82/20220607/Anonymous/Entry

我想閱讀下面的所有數據

/Admin/Dashboard/MRmZh9mixve1CV3M0EI8wfyDnb82

我試過了但是它返回空

String collection = "/Admin/Dashboard/MRmZh9mixve1CV3M0EI8wfyDnb82";

await FirebaseFirestore.instance.collection(collection).get().then(
      (res) => print("Successfully completed ${res}"),
  onError: (e) => print("Error completing: $e"),
);

所以基本上我想閱讀其中的所有 collections,每個集合中都有更多文檔

在此處輸入圖像描述

在此處輸入圖像描述

我可以使用這種方式從特定文檔和 collections 中提取數據。

final _firestore = FirebaseFirestore.instance;

  void getMessages() async{
    final docRef = await _firestore.collection('1234@123.com').doc('123123').collection('record').get();
    for (var Ref in docRef.docs) {
      print(Ref.data());
    }
  }

在此處輸入圖像描述 在此處輸入圖像描述


  void getMessages44() async{
    final docRef = await _firestore.collection('Admin').doc('Dashboard').collection('MRmZh9mixve1CV3M0EI8wfyDnb82').get();
    for (var Ref in docRef.docs) {
      print(Ref.data());
    }
  }

  void test() async {
    print("test");
    // List<dynamic> userList = [];
    QuerySnapshot querySnapshot = await _firestore.collection('1234@123.com').doc('123123').collection('record').where('Item', isEqualTo:"sdfsf").get();
    // userList = querySnapshot.docs.map((e) => dynamic.User.fromMap(e.data())).toList();
    final allData = querySnapshot.docs.map((doc) => doc.data()).toList();
    // final allData = querySnapshot.docs.map((doc) => doc.get('fieldName')).toList();
    print(allData);
  }
@override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Record'),
        leading: null,
        actions: <Widget>[
          IconButton(
            icon: const Icon(Icons.add),
            onPressed: (){
              Navigator.pushNamed(context, creationCategory.id);
            },
          ),
          IconButton(
            icon: const Icon(Icons.settings),
            onPressed: () async {
              // await getData();
              // getMessages();
              // getMessages();
              getMessages44();
              test();
              // getMessages33();
              // Navigator.push(
              //   context,
              //   MaterialPageRoute(builder: (context) => const ItemDetailsScrrent()),
              // );
            },
          ),
        ],
      ),
      body: SafeArea(
        child: Container(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.spaceBetween,
            children: <Widget>[
              Text('Trahs Collection',
              style: const TextStyle(
                color: Colors.black38, fontWeight: FontWeight.bold, fontSize: 40),
              ),
              ItemStream(),
            ],
          ),
          ),
      ),
      );

  }

在此處輸入圖像描述 在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM