Iphone 获取属于与核心数据具有一对多关系的实体的所有对象

Iphone 获取属于与核心数据具有一对多关系的实体的所有对象,iphone,objective-c,ios,core-data,Iphone,Objective C,Ios,Core Data,我正在开发一款简单的iPhone应用程序,并试图让核心数据正常工作。目前,我的数据模型中有两个实体,如下所示: 在我的应用程序中,我有一个tableview,它应该显示属于某个注释块的所有页面。我目前使用: NoteblockAppController * appController = [NoteblockAppController sharedNoteblockAppController]; NSArray * list = [appController allInstancesOf:@"

我正在开发一款简单的iPhone应用程序,并试图让核心数据正常工作。目前,我的数据模型中有两个实体,如下所示:

在我的应用程序中,我有一个tableview,它应该显示属于某个注释块的所有页面。我目前使用:

NoteblockAppController * appController = [NoteblockAppController sharedNoteblockAppController];
NSArray * list = [appController allInstancesOf:@"Page" orderBy:@"createdAt"];
noteblockPages = [list mutableCopy];
但这显然不起作用,因为它总是显示相同的页面。我假设我必须以其他方式获取结果,但我不知道如何获取结果

我被卡住了,所以任何提示/窍门都很好


谢谢

让CoreData来做这项工作。你有记事本的一个实例,对吗

[yourNoteblock noteblockPages]

我喜欢添加派生方法来访问这样的东西。我将它们添加到自定义类中,但不在数据模型中对它们进行建模

一旦访问器正常工作,它应该返回一个可变集。然后:

- (NSArray *)noteblockPagesArray {
  NSMutableSet *pages = self.noteblockPages;
  NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"createdAt" ascending:YES];

  NSArray *orderedPages = [pages sortedArrayUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]];
  return orderedPages;
}

根据需要修改以缓存值。

您好,谢谢您的回答。我有一个名为pagesNoteblock的实例变量和属性,它是第二个tableview中Noteblock的实例。我在前面的tableview(即AQGridView,gridView)中尝试这样设置该实例:
-(AQGridView*)gridView didSelectItemAtIndex:(NSInteger)索引{PagesTableViewController*pagesController=[[PagesTableViewController alloc]init];Noteblock*selectedNoteblock=[noteblockList objectAtIndex:index];[pagesController设置PagesNotBlock:selectedNoteblock]
但它不起作用。实例没有被设置。我会把精力集中在找出它没有被设置的原因上,而不是做一个新的查询。你可能想用相关的代码提出一个新的问题。祝你好运。谢谢,这看起来是一个干净的解决方案。我解决了我的访问器问题后会尝试它。结果是属性设置完成后,我只需将NSLog语句移动到ViewWillDisplay,而不是我的init方法。您提供的代码调用了两个未显示的自定义方法,因此我们不知道这些代码的作用或您希望看到的内容。