与 firebase 直接消息聊天 - 数据结构?

Luc*_*ùlè 0 nosql firebase firebase-realtime-database

我最近开始使用 Firebase,并在其中一个演示应用程序中实现了类似 Tinder 的功能。您基本上可以滑动用户,滑动用户后,我将以以下格式/路径存储数据:

matches/randomeFirebaseID()/{
userid: true
otherUserid: true
}
Run Code Online (Sandbox Code Playgroud)

再次查询它们非常好,但是我怎样才能制定一个不允许重复条目的安全规则。通过安全规则这甚至可能吗?或者我应该以另一种形式构建数据?可以简单地事先查询它们并检查是否已经存在匹配项,但这需要一些额外的时间,我不想浪费。

感谢您的帮助!

Luc*_*ùlè 5

对于任何有兴趣的人。解决方案非常简单,而且一如既往:)

我混合使用了两个用户 ID 作为对话的关键。为了知道哪个先走,我只是简单地对它们进行了排序,所以它们总是以相同的方式排列。

示例: userid1: abcde userid2: zudfg

所以对话 ID 为:abcdezudfg

这使得访问它变得非常容易,甚至检查这些用户之间的对话是否已经存在。

我希望这有帮助。