[A] << -------------> [B]属性约
如果关系中的对象是从抽象类继承的,则无法通过关系基于属性获取/排序对象
NSSortDescriptor *titleSort = [[NSSortDescriptor alloc]initWithKey:@"b.attribute" ascending:YES];
[fetchRequest setSortDescriptors:@[titleSort]];
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'keypath b.attribute not found in entity <NSSQLEntity A id=17>'
所以我们与[B]的“一对一”关系有一些属性;
当我尝试通过[B]的“属性”获取[A]时,我发生了崩溃 .
这是非常奇怪的,似乎Core Data不支持处理使用继承实体的keypath
你见过这个????
谓词相同 - 请帮助!
提出问题,所有你想要的
1 回答
我不确定问题是B是一个继承的实体 . 通常,您无法在第二级执行操作(在与实体A相关的另一实体B上的属性上) .
基本上你应该分两步完成:
检索所有B对象,按
attribute
排序通过for-each循环从B对象中获取A对象(非常简单,因为你有一对一的关系)