如何创建获取请求以获取具有特定属性值的对象
Posted
技术标签:
【中文标题】如何创建获取请求以获取具有特定属性值的对象【英文标题】:How to create a fetch request to fetch objects with specific attribute values 【发布时间】:2015-06-26 22:37:46 【问题描述】:我想创建一个获取请求,以便获取具有特定属性值的对象。
在我的一个视图控制器中,我使用如下所示的获取请求:
- (NSFetchRequest *)targetsFetchRequest
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Target"];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"order" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
return fetchRequest;
但是现在我为目标对象创建了另一个属性,称为“状态”,并且在另一个视图控制器中,我想创建一个获取请求以仅获取其状态等于“1”的目标对象...
请帮我弄清楚如何创建这个提取请求。
感谢分配!
【问题讨论】:
【参考方案1】:您需要在获取请求中添加谓词。看看Apple Documentation for NSPredicate 和Predicate Programming Guide。
在你的情况下,你需要这样的东西:
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"status == 1"];
【讨论】:
以上是关于如何创建获取请求以获取具有特定属性值的对象的主要内容,如果未能解决你的问题,请参考以下文章
如何执行条件“executeFetchRequest”以仅获取特定属性为零的实体? [复制]