我正在尝试使用Firestore在我的iOS应用中设置一个表 . 我有一个集合中的项目列表,在第一次运行时,tableview成功显示集合中的所有项目 . 我希望用户能够“收藏”该集合中的各种项目(在单独的用户集合中创建新的“文档”),然后仅过滤他们的收藏夹 . 我的数据模型思路如下:

(Firestore Collection“Toylines”可能有5,000-10,000个项目,用户无法编辑)

Firestore Collection A -> Toylines/toyLineID1 (read only)
{
    title: Star Wars
}

Firestore Collection A -> Toylines/toyLineID2 (read only)
{
    title: Marvel
}

Firestore Collection“Users”会生成一个单独的用户文档,每次他们喜欢toyline时都会添加一个字段项

Firestore Collection B -> Users/{userID1} (write only by authenticated 
matching user)
{
   toyLineID1: true
   toyLineID2: false
}

Firestore Collection B -> Users/{userID2}  (write only by authenticated 
matching user)
{
   toyLineID1: true
   toyLineID2: true
}

我如何编写查询,以便如果userID1想要在iOS的表格视图中只显示“true”的toyLineID?我是在正确的轨道上吗?

想法是如果用户不想过滤,他们会看到所有的toylines,但如果他们打开过滤器,他们会看到他们的“收藏夹”或标记为“真”的那些......

提前感谢任何建议......

  • 我正在考虑设置如下图所示的模型:用户将拥有toyLineIDs的真假值(没有条目也等于false)的集合
    User Collection

并且会有一个玩具线的集合,每个玩具线的描述(只能由管理员编辑)
User Collection

并且,理想情况下,我将能够设置一个查询,该查询将从经过身份验证的用户集合中获取所有真实项目,并在iOS表格视图中显示这些项目,其中数据从匹配的toyLine集合信息中提取...

这可能在Firestore中吗?我是否正确地思考它?