【发布时间】:2018-08-05 06:03:25
【问题描述】:
非常感谢您在使用 NSFetchResultsController 时提供的帮助。
我认为我需要做的事情对某些人来说应该很简单,但我有点卡住了!
我将尝试解释我在做什么,或者是它的简化版本。
我有 2 个 viewController,每个都显示一个 NSTableView。我正在使用带有实体俱乐部的核心数据。其中一个 viewController 显示了一个俱乐部列表。所以对于这个,我创建了一个NSFetchResultsController,传递给它一个fetchRequest,它基本上是NSFetchRequest<Clubs>(entityName: “Clubs”)。
每个俱乐部都有一个成员列表,具有一对多的关系)。我想使用第二个 viewController 显示成员。因此,当我在第一个表中点击一个俱乐部时,我希望第二个表显示其成员。
我有一个NSFetchResultsController 连接到第二个表。我被困在要发送给它的 fetchRequest 上。如果我使用与第一个类似的表,即NSFetchRequest<Members>(entityName: “Members”),正如预期的那样,我最终会得到一个显示所有存储的俱乐部的表,第二个显示存储的所有成员的表,而我只希望选择俱乐部中的成员在第一个表中。我希望这是有道理的。所以我的问题是,我应该将什么fetchRequest 发送到第二张桌子NSFetchResultsController?
【问题讨论】:
-
Apperently 你知道 谓词 可以分配给核心数据获取请求。你能想到一个谓词将第二个视图控制器中的成员限制为与第一个视图控制器中的俱乐部相关的成员吗?
-
我对谓词知之甚少,但不足以知道在这种情况下使用哪个。
-
嗨@MartinR - 这就是我要问的 - 我应该使用哪个谓词??
-
@guinnessman 反向关系的名称是什么 - 从
Member到Club? -
俱乐部有一种称为成员的关系——一对多的关系。从会员到俱乐部,就是关系俱乐部。
标签: swift macos core-data nsfetchedresultscontroller nsfetchrequest