【问题标题】:How to sort datas from firestore to a map by date in flutter如何在flutter中按日期将数据从firestore排序到地图
【发布时间】:2019-06-20 08:06:35
【问题描述】:

我正在尝试将我的 firestore 中的事件列表排序到地图中。 像这样

Map<DateTime, List> _events;
_events = {
DateTime.parse('2019-06-30'): ['Event 1', 'Event 2'],
DateTime.parse('2019-06-20'): ['Event 3', 'Event 4'],
}

我将 Firestore 数据文档作为事件 有字段

name: 'Event 1'
date: '2019-06-20'

name: 'Event 2'
date: '2019-06-30'

name: 'Event 3'
date: '2019-06-20'

name: 'Event 4'
date: '2019-06-20'

每个在不同的文档中

如何使用 firebase 实现这些目标

    QuerySnapshot querySnapshot = await Firestore.instance
        .collection('${_username.toLowerCase()}-orders')
        .orderBy('date', descending: true)
        .getDocuments();
    var damap = querySnapshot.documents;
    print('damap $damap');

我想把这个 damap 变量数据变成 _events 的格式,我该怎么做

【问题讨论】:

    标签: firebase object flutter google-cloud-firestore


    【解决方案1】:

    由于您使用YYYY-MM-DD 格式存储日期,您可以按字典顺序对这些字符串进行降序或升序排序,然后可以使用orderBy 方法,如下所示:

    Firestore.instance
              .collection('${_username.toLowerCase()}-orders')
              .orderBy('date', descending: true)
              .snapshots()
              .listen((data) {...})
    

    【讨论】:

    • 我看不懂那个编码。你能帮我解释一下吗?
    • 查看更新。我之前向您介绍了 Cloud Firestore 的 Flutter 插件。
    猜你喜欢
    • 2021-01-12
    • 2020-09-14
    • 2022-11-14
    • 2021-11-02
    • 2021-01-08
    • 2020-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多