在数组字段中具有特定值的行上设置标志

时间:2014-09-03 17:53:11

标签: parse-platform

我有一些帖子,每个帖子我都添加了2个数组字段,以跟踪投票和投票的用户。

鉴于已登录的用户,当我查询帖子集时,我想知道每个帖子是否有用户投票或投票。

请注意,我不希望通过upvote和downvote来过滤帖子 - 我想要所有帖子,只需在每个帖子上添加一个标记,以便我可以使用upvote或downvote图标突出显示每个帖子。

我的理解是,使用对数组值的查询(iOS SDK中的whereKey:equalTo:)是不可能的,因为这会过滤帖子,而我需要它们。

我能想到的唯一解决方法是创建2个不同的查询,一个不带过滤器,另一个返回用户已投票/投票的行,然后在客户端组合2个结果集。

有没有更好的方法,最好是在一个查询中?

否则,如果我将2个数组移动到单独的类/集合中,我会有什么优势吗?

2 个答案:

答案 0 :(得分:1)

不幸的是,您无法在Parse Objects上设置标志。要完成此任务,您需要两个查询。您可以查询所有评论,然后查询用户喜欢或不喜欢的帖子。 Link

答案 1 :(得分:0)

更好的选择是使用单个查询来获取所有记录,然后使用简单的循环来添加标记客户端。

显示当前用户的上/下投票是UI问题,尝试将数据库用于该任务是不合适的。

如果写得正确,你的循环也应该比运行第二个查询快得多。