我可以在firebase中保存和查询标签吗?

Sue*_*rsi 1 nosql firebase firebase-realtime-database

将标记保存到firebase中的记录的方法有哪些.例如,我有一个拥有收藏夹的用户,他/她可以为收藏夹添加多个标签.我希望能够通过一个或多个标签进行查询?

这是基本结构

Users{
 favourites: {
   fav_1:{
        tags:[tag1,tag2,tag3,...]
   }
   fav_2:{
        tags:[tag1,tag2,...]
   }

   .....
 }
Run Code Online (Sandbox Code Playgroud)

}

Fra*_*len 5

在Firebase中(与大多数NoSQL数据库一样),您通常需要根据应用程序的使用方式对数据建模.

您当前的模型非常适合查找特定用户的标记列表(fav_1,fav_2).然而,找出特定标签的用户列表并不是那么好.要允许后一个查询,请将反向查找列表添加到数据模型中:

Tags: {
    fav_1: {
        User1: true,
        User2: true
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

通过将其与原始模型相结合,您可以查找用户的标记列表以及标记的用户列表.

有关NoSQL数据建模的精彩介绍,请参阅NoSQL数据建模.