【发布时间】:2013-12-28 01:24:33
【问题描述】:
在我的应用程序中,我有两个实体,它们是 Items 和 Lists。每个项目只属于一个列表,每个列表有很多项目。因此,在模态中,实体具有以下关系:
- 对于
Items:一对一关系 (belongs_to_list) 指向一个列表 - 对于
Lists:多对多关系 (has_items) 指向多个项目
如何使用谓词来获取项目以检查与其相关的列表是否等于我提供的特定列表?我不想通过列表获取项目(比如获取has_items 的对象)。我希望能够在谓词中使用belongs_to_list 将其与我拥有的托管对象进行比较。我尝试了以下但它不工作。有什么帮助吗?
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Items" inManagedObjectContext:_managedObjectContext];
[fetchRequest setEntity:entity];
NSSortDescriptor *sort = [[NSSortDescriptor alloc] initWithKey:@"item_detail" ascending:YES];
[fetchRequest setSortDescriptors:[NSArray arrayWithObject:sort]];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"list.list_name == %@", [self.currentList valueForKey:@"list_name"]];
[fetchRequest setPredicate:predicate];
【问题讨论】:
标签: ios objective-c core-data