【发布时间】:2023-03-21 20:46:01
【问题描述】:
我将如何过滤(构造一个 NSPredicate)以获取以下内容。
- 拥有 SCHOOL 和 PERSON 实体
- 一对多关系,即一个人有一个学校,学校有很多人
- 过滤器方法的输入是 (a) 人员姓名(例如所有人的名字都是“Tom”),以及 (b) School 本身的管理对象。
- 就本问题而言,假设 School 没有唯一属性
那么我的困惑/观察是:
- 我已经拥有 School 托管对象本身,但是在创建谓词时不确定如何使用它?
- 但是,如果我创建了 NSPredicate,在任何情况下我如何创建与 SCHOOL 的关系,因为我让 Core Data 执行此操作时自己没有链接它们的 ID(标识符)?
首选是 SWIFT(但是如果有人知道 Objective-C 也可能对我有帮助)。所以我再次尝试做的是:
- 获取所有 PERSON 对象,其中 first name = "xxx",并且它们与以下 SCHOOL 托管对象相关联。
【问题讨论】:
-
学校有独特的名称或任何其他独特的财产价值吗?如果是,您可以将其用于谓词。
-
显示示例数据和所需结果以及您迄今为止尝试的代码及其产生的错误/结果
-
目前 SCHOOL 中没有唯一名称 - 希望有一种方法可以创建这样的谓词而不必这样做...?
-
没有显示错误的代码,因为我不确定如何构造代码
-
但是您如何识别/区分学校呢?在为某人分配学校时,您已经需要它了。
标签: ios swift core-data relationship nspredicate