为获取请求设置谓词

时间:2013-03-31 13:43:54

标签: ios objective-c core-data

我正在使用核心数据并在函数中使用:

- (NSFetchedResultsController*)fetchedResultsController()

我想使用一个谓词,它可以让NSFetchRequest返回具有给定关系值的托管对象。我试过这个:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"belongToS like[cd] %@", (S*)self.s];
    [fetchRequest setPredicate:predicate];

Note: 
- belongToS: relationship of type (S *)
- self.s is a managed object casted to type (S *) since it is of NSManagedObject and actually it's truly an object of type (S *).

当我运行代码时,它不会返回任何内容!我如何编辑它以使其工作?是否有任何最佳解决方案来获取具有相同关系值的对象?

1 个答案:

答案 0 :(得分:1)

谓词中的

LIKE仅用于比较字符串。要获取与self.s相关的所有对象,以下内容应该有效:

[NSPredicate predicateWithFormat:@"belongToS = %@", self.s];