【问题标题】:Cloud firestore - Order by nested dataCloud firestore - 按嵌套数据排序
【发布时间】:2021-01-05 23:59:51
【问题描述】:

我是 Firebase Cloud Firestore 的新手。我的数据库结构如下图所示。所以,基本上我有一个“喜欢”的文档,它跟踪用户喜欢内容的时间戳。它有“章节”作为子集合,并且在每个章节中都有具有实际时间戳的子章节。现在我想检索按时间戳排序的所有喜欢的数据。我不知道如何才能做到这一点!

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    您可以使用orderBy() 指定数据的排序顺序,如下例所示:

    db.collection("liked").orderBy('timestamp').get()
    

    我也建议你关注this doc,它演示了如何设置 Cloud Firestore、添加、读取数据和保护数据。

    更新

    我创建了以下数据库来复制您的场景:

    reprod(collections)/
            test1(document)/
                liked(collections)/
                            0(document)/
                                  type(filed)
    

    为了按升序流式传输时间戳,我手动迭代到文档并获取按时间戳排序的数据:

    reprod = db.collection(u'reprod').document(u'test1').collection(u'liked')
    timestamps = reprod.stream()
    for doc in timestamps:
        print(f'{doc.id} => {doc.to_dict()}')
    

    为此,我使用了有关如何使用 retrieve data 和如何使用 order data 的 Firestore 文档。

    【讨论】:

    • 嗨,我已经通过源,但您的回复没有回答我在寻找什么。如果您看到描述和图像,我有一个嵌套结构,其中实际存储了时间戳。
    猜你喜欢
    • 2020-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-12
    • 2023-01-01
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多