0

我正在制作一个带有调查问卷的应用程序,并且我正在使用 Core Data 来保存它的所有数据。

共有三个实体:Person(接受调查问卷的人)、Question(问题)、QuestionResult(问题的结果)

Person 与 QuestionResult 相关联,而 QuestionResult 则通过关系链接到 Question。

给定一个 Person 和 Question 实体,我希望能够找到两者之间是否存在关联的 QuestionResult 对象。这可以使用 NSPredicate 来完成吗?

4

1 回答 1

0

设置:

Person <<------->> Question
Person <-------->> Answer
Question <------>> Answer

解决方案:

NSSet *filtered = [person.answers filteredSetUsingPredicate:
   [NSPredicate predicateWithFormat:@"question == %@", questionObject]];
BOOL thereIsAnAnswer = filtered.count != 0;

或者,如果您不需要向某人分配问题,除非有答案,您可以简化模型:

Person <---------->> Answer <<----------> Question;

谓词将完全相同。

于 2013-01-23T14:55:20.117 回答