gpt4 book ai didi

ios - 我正在尝试使用 Firebase 创建排行榜并显示用户名、高分、地区。

转载 作者:可可西里 更新时间:2023-10-31 23:58:53 26 4
gpt4 key购买 nike

我的目标是使用 Firebase 创建排行榜并在表格 View 中显示用户名、高分和地区。我当前的数据库看起来像这样 enter image description here

我现在拥有用户下的所有内容。我这样做是为了增加当前用户的数据。不幸的是,通过这样做,我不认为我可以让别人看到别人的高分或用户名。使用当前节点设置是否有解决此问题的方法,或者我是否需要更改它。如果可以,有人可以举例说明数据库的外观。

最佳答案

您应该将您的用户特定数据与排行榜分开。

您有您的用户节点,其中您的用户数据位于其唯一用户 ID 下。然后您还可以创建一个排行榜节点,并在相同的唯一用户 ID 下创建您的排行榜特定数据。这样您就不必一次获取所有数据来了解用户特定数据。

连接是用户 ID,即唯一 ID,您的用户将知道该 ID,并通过该 ID 检索他/她的数据。其他玩家可以通过查询来检索排行榜节点。您还应该存储一些看似冗余的数据,例如用户节点和排行榜都需要的用户名。

不要忘记应用安全规则,因此用户只能写入他/她的数据。

看起来像这样:

enter image description here

知道他/她的 UID 的经过身份验证的用户然后可以通过以下路径获取数据来收听他/她自己的排行榜分数:“leaderboards/UID”对。

其他玩家应该只需要使用路径:“leaderboards”来获取排行榜上的每个玩家。要对它们进行排序并仅获取前 10 名玩家,您必须使用查询。

使用 queryOrderedByChild 按高分排序数据为此,您还应该添加安全规则:“.indexOn”:“highscore”。

要获取前 10 名玩家,请使用queryLimitedToFirst 将其设置为 10,它将只下载前 10 名玩家。

您应该阅读有关查询的更多信息:https://firebase.google.com/docs/database/ios/lists-of-data#sorting_and_filtering_data

关于ios - 我正在尝试使用 Firebase 创建排行榜并显示用户名、高分、地区。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40228786/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com