更新以下问题: 我们能够使用父实体获取请求通过使用fatherChild关系来查询子实体。示例查询如下:如何为多个实体创建一个fetchRequest?
NSPredicate *myPredicate = [NSPredicate predicateWithFormat:@"fatherChild.name LIKE 'fx'"];
现在,我们正在努力做的是使用上面的谓词,但另一个地方,我们要找到孩子的父亲定名称的另一个条件。我们用下面的代码
NSPredicate *myPredicate = [NSPredicate predicateWithFormat:@"name LIKE 'john' AND ANY fatherChild.name in 'fx'"];
但程序崩溃与例外: [__NSCFString countByEnumeratingWithState:对象:伯爵:]:无法识别的选择发送到实例0xad49c40
通过我们看到,我们可以使用子查询的例子阅读但不知道我们的情况是什么语法,我们有一个具有一对多关系的实体。任何帮助,将不胜感激?
谢谢。
问题: 我们有一个包含三个实体的数据模型:父亲,母亲和孩子。请参阅图片以供参考。
我们有一个例子查询请求对父亲实体如下:
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Father"
inManagedObjectContext:managedObjectContext];
[request setEntity:entity];
NSString *attributeName = @"name";
NSPredicate *myPredicate = [NSPredicate predicateWithFormat:@"%K like %@",
attributeName, searchField.text];
我们对母亲和儿童的实体类似的查询请求。我们想要做的是创建一个查询来结合父亲和母亲的实体。例如,我们希望在单个查询中搜索父名= Mike和Mothers name = Jen。我们该怎么做呢?
感谢您的回复。
你是说你想从一个单一的查询中得到两种不同类型的结果,或者你正在尝试寻找哪里有'mother.name == foo'和'father.name == bar'的孩子? – 2012-04-01 21:28:03
后者是我们正在努力做的。谢谢! – user1306828 2012-04-01 21:58:06