Core Data中的关系、获取属性和表达式
1. 获取属性概述
关系可以将托管对象与特定的其他托管对象关联起来,类似于iTunes播放列表,可以将特定歌曲添加到列表中。而获取属性则类似于iTunes的智能播放列表,它基于条件将托管对象与其他托管对象关联起来,而不是关联特定对象。获取属性通过创建谓词来定义应返回哪些对象,谓词是表示选择条件的对象,主要用于对集合进行排序和获取结果。
获取属性具有以下特点:
- 始终是不可变的,运行时不能更改其内容。
- 条件通常在数据模型中指定,然后可以使用属性或键值编码(KVC)访问满足该条件的对象。
- 与多对多关系不同,获取属性是有序集合,可以指定排序顺序,但数据模型编辑器不允许指定获取属性的排序方式,若需要排序则需编写代码实现。
创建获取属性后,可以使用 valueForKey: 方法检索满足条件的对象,示例代码如下:
NSArray *olderPeople = [person valueForKey:@"olderPeople"];
如果使用自定义的 NSManagedObject 子类并为获取属性定义了属性,也可以使用点符号检索对象:
NSArray *olderPeople = person.olderPeople;
2. 在数据模型编辑器中创建关系和获取属性
使用关系或获取属性的第一步是将它
超级会员免费看
订阅专栏 解锁全文
11

被折叠的 条评论
为什么被折叠?



