【发布时间】:2011-10-15 13:37:33
【问题描述】:
我在这个问题上摸不着头脑。我有一个解决方法,但我不明白,所以这不算数。我想要做的是实体(在这种情况下,可以说是“照片”),我想找到除指定用户之外的任何人评论的所有照片。这里的关系是照片->评论->用户,其中一张照片可以有多个评论,并且每个评论仅由一个用户拥有。前两个例子是我合乎逻辑的第一次尝试,但不起作用。我发现了一些类似的代码,显示了有效的子查询,但是谁能解释为什么前两个示例不起作用?
// this does not work
[NSPredicate predicateWithFormat:@"NOT (ANY reviews.user = %@)", self.user]
// this does not work
[NSPredicate predicateWithFormat:@"NONE reviews.user = %@", self.user]
// this works
[NSPredicate predicateWithFormat:@"SUBQUERY(reviews, $x, $x.user == %@).@count == 0", self.user];
【问题讨论】:
-
你是对的,这对多对多不起作用,你的实体模型是如何构建的,使得reviews.user 是一对多的关系?
-
它应该可以工作(第一个和第二个例子)。 ImHuntingWabbits 可能是在正确的轨道上,你的模型可能搞砸了。您可以发布一个示例项目还是需要一个作为示例?
-
我有同样的问题,不能否定与 NOT 或 NONE 的关系,只能使用子查询。
-
我也有同样的问题 - 有什么解决办法吗??
-
@Duane Fields,你是怎么解决这个问题的?我有完全一样的问题。除了子查询之外,这里的建议都不起作用。你是怎么解决这个问题的?还是您坚持使用子查询?
标签: ios core-data nspredicate