繁体   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