取得一个多对象

问题描述:

我有两个实体如下图。如何获取Trip的所有Node?我如何指定我想要获取的Trip取得一个多对象

enter image description here

+0

你,否则已经拥有核心数据的设置和管理对象范围内? – isaac

+0

是的。我也有一个表格视图,显示按照'timeStarted'排序的旅行行程列表,但我希望能够使用行程日期点击该单元格并转到包含文本视图的其他视图,以便我可以看到所有在那次旅行中保存的节点。 – Baub

+1

请参阅下面的扩展答案,了解如何使用objectAtIndexPath获取您的Trip的超级简单方法: – isaac

假设你有一个管理对象上下文,你会获取一组使用读取的结果控制器跳闸的。您可以将一个谓词放在一个抓取中,然后您只会找回您匹配的记录。您需要查看NSFetchedResultsController上的文档,以了解如何从CoreData获取所需的Trip。

一旦你有旅行,很容易得到你的节点。致电:

[trip nodesInTrip] 

您会收到回复。

如果您使用的是表视图,那就更简单了(这里假设你的fetchedResultsController是你的意见表中的数据源):

-(void)didSelectRowAtIndexPath:indexPath { 

    Trip *selectedTrip = [[fetchedResultsController fetchedObjects] objectAtIndexPath:indexPath]; 
    NSArray *arrayOfNodes = [selectedTrip nodesInTrip]; 
+0

这正是我所需要的。谢谢! – Baub

+0

你的编辑也有帮助。你真棒。谢谢! – Baub