如何编写Core Data谓词来过滤特定的子实体类型?

时间:2009-11-21 18:14:01

标签: cocoa core-data nspredicate

我有一个名为FObject的超级实体,有几个子实体,比如说Foo1,Foo2和Foo3。我有许多表格视图,应该显示有关子实体的不同集合的信息,例如,一个只显示Foo2s和Foo3s,而另一个显示所有这些。

如果我在FObject上获取,我如何编写一个谓词来过滤子实体类型?

我尝试了“entity.name IN%@”并提供了一个实体名称列表但不起作用。

或者我应该只过滤返回的结果?

或者我应该添加一个编码类型的属性并使用“输入IN%@”?

1 个答案:

答案 0 :(得分:0)

如果你有不同的表视图来显示各个子实体的实例,你可能每个表都有NSArrayControllers,对吗?如果是这种情况,为什么不将数组控制器的实体名称设置为所需的子实体名称?

这是获取请求中使用的名称(您指定要获取的实体名称)。获取请求中使用的谓词用于按属性或关系进行过滤,而不是实体名称。