Parse platform 解析JSSDK,如何在文档数据库中查询多对多?

Parse platform 解析JSSDK,如何在文档数据库中查询多对多?,parse-platform,Parse Platform,在Parse js指南中,它说: 例如,用户可能有许多她可能喜欢的帖子。在这种情况下,您可以使用关系存储用户喜欢的帖子集。要将帖子添加到用户的“喜欢”列表中,您可以执行以下操作: var user=Parse.user.current(); var关系=用户关系(“喜欢”); 关系。添加(post); user.save() 我的用例实际上就是这样的设置。我们有用户,他们可以“喜欢”0多个帖子,所以我完全按照上面所述设置它。我现在的问题是,对于给定的帖子或一组帖子,我需要查询有多少用户喜欢每个帖

在Parse js指南中,它说:

例如,用户可能有许多她可能喜欢的帖子。在这种情况下,您可以使用关系存储用户喜欢的帖子集。要将帖子添加到用户的“喜欢”列表中,您可以执行以下操作:

var user=Parse.user.current();
var关系=用户关系(“喜欢”);
关系。添加(post);
user.save()


我的用例实际上就是这样的设置。我们有用户,他们可以“喜欢”0多个帖子,所以我完全按照上面所述设置它。我现在的问题是,对于给定的帖子或一组帖子,我需要查询有多少用户喜欢每个帖子。我很难弄清楚如何查询。。。有人能帮我吗?我不确定这是否是一个限制,或者我只是不知道如何解决这个问题。我曾考虑过在帖子本身上存储一个计数器,并在用户喜欢或不喜欢帖子时使用increment()和decrement(),但如果我能侥幸逃脱,我宁愿不这样做。

有几种方法可以做到这一点。一种是在每个帖子上都有一个与
likedBy
的关系,因此当用户喜欢帖子时,可以将该用户添加到帖子的
likedBy
关系中,也可以将帖子添加到用户的
likedBy
关系中

另一个解决方案是为类似
创建一个新的解析类。每当用户喜欢帖子时,您都会创建一个新的
Like
,并将指针指向
post
和喜欢它的
用户。然后,如果你想找到用户喜欢的帖子,你可以很容易地查询,或者如果你想知道哪些用户喜欢帖子,那么查询也同样简单


我个人使用第二种方法,但两者都可以

Gotcha,因此第二种方法是在关系数据库中执行多对多操作的典型方法。不过,我想我会选择第一个选项,因为我更愿意在更新前先点击,而不必在以后获取数据时进行额外的查询。