firebase Storage 的排名函数在哪里

Where do I the ranking functions for firebase Storage

我正在开发一个应用程序,用户可以上传并为 TagImages 投票,所以需要做的是当有人签入 TagTopic 时获得最受欢迎的图像和最新的图像,所以要做这个排名操作。

我该如何处理?

我认为你需要的是使用 Firestore 或 Realtime,但在你的情况下,实时会更好,因为读写次数,但是,你可以做的是为每个图像创建一个对象,其中包含关于它的元数据,比如票数,也可能是反对票、上传者、上传时间、标签或任何你想要的东西。然后在你的应用程序或网站中,你将进行一个查询,读取让我们说前 5 名,并获取它们,然后使用图像名称从云存储中获取它们。例如:

images:{
    image1Name:{
      upvote: 10;
      downvote: 2;
      totolvote: 8;
      uploader: 'Remoo';
      uploadTime: '10:00:00AM 23/11/2021' //whatever the structure 
    }
}

然后你查询它们(这是Flutter的例子):

_firebaseDatabase
    .reference()
    .child("images")
    .orderByChild('totolvote')
    .limitToFirst(5)
    .once().then(()=>{...})

然后从云存储中获取 image1Name。
但请注意,您只能在每个查询中使用一个 orderByChild,另一方面,您可以在 Firestore 中使用多个 where,但读取和写入的成本会更高。最终取决于您以及您如何构建它。希望这对你有用。