Dar*_*ren 5 nspredicate nsfetchrequest ios ios5
我有两个班,公司和MyCompany.MyCompany是Company的子类,Company是NSManagedObject的子类.我正在尝试为NSFetchRequest编写谓词,该谓词将返回类Company的结果,但过滤掉MyCompany对象.
我尝试过以下内容(建议来自/sf/answers/564615481/):
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"class != %@",NSStringFromClass([myCompany class])];
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:
'keypath class not found in entity <NSSQLEntity CKCompany id=1>'
Run Code Online (Sandbox Code Playgroud)
我也试过(建议从这里/sf/answers/818578841/,我知道我真的不想SELF isKindOfClass,但我只是用与答案中给出的完全相同的命令进行测试):
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"self isKindOfClass: %@", [myCompany class];
Run Code Online (Sandbox Code Playgroud)
并得到以下错误:
'Unknown/unsupported comparison predicate operator type'
Run Code Online (Sandbox Code Playgroud)
如何编写谓词来实现我想要的?我支持iOS 5及更高版本.
你可以设置
[fetchRequest setIncludesSubentities:NO];
Run Code Online (Sandbox Code Playgroud)
因此,获取请求仅返回请求的实体类型的对象,并且不包括子实体.
如果在核心数据获取请求中使用谓词,那么(据我所知)不可能在谓词中引用对象类或实体名称.
| 归档时间: |
|
| 查看次数: |
1150 次 |
| 最近记录: |