在我的应用程序中,我在coredata中有一些记录,我想按升序获取最后20条记录,即如果有30条记录,我想获取从11到30的记录升序-NSFetchRequest*fetchRequest=[[NSFetchRequestalloc]init];NSEntityDescription*entity=[NSEntityDescriptionentityForName:@"Messages"inManagedObjectContext:self.managedObjectContext];[fetchRequestsetEntity:entity];[fetchRequestsetFetc
我有一个包含数千个实体的核心数据层,不断同步到服务器。同步过程使用获取请求来检查deleted_at以实现软删除目的。在performBlockAndWait调用中有一个执行保存操作的上下文。关系映射由RestKit库处理。CoreDataEntity类是NSManagedObject的子类,也是我们所有不同的核心数据对象类的父类(superclass)。它具有我们所有实体都继承的一些属性,例如deleted_at、entity_id以及所有样板获取和同步方法。我的问题是一些提取请求似乎在修改对象后返回不一致的结果。例如在删除对象后(将deleted_at设置为当前日期):[CoreD
我在GCD调度队列中对NSManagedObjectContext进行操作,定义如下:-(NSManagedObjectContext*)backgroundContext{if(backgroundContext==nil){self.backgroundContext=[NSManagedObjectContextMR_contextThatNotifiesDefaultContextOnMainThread];}returnbackgroundContext;}MR_contextThatNotifiesDefaultContextOnMainThread是来自MagicalRe
据我了解,这是一个内存问题,特别是因为我使用不同的计时器多次从多个地方调用该方法。下面抛出异常的代码:-(NSMutableArray*)getAllTraps{@synchronized(self){self.fetchRequest=[[NSFetchRequestalloc]initWithEntityName:@"Trap"];NSError*error=nil;NSArray*results=[self.managedObjectContextexecuteFetchRequest:self.fetchRequesterror:&error];if(!results){NSL
不完全确定为什么它现在不起作用,我认为它以前一直在起作用。有人看到这个FetchRequest构造有问题吗?-(NSArray*)entriesForDate:(NSDate*)date{NSFetchRequest*request=[[NSFetchRequestalloc]initWithEntityName:@"Entry"];NSPredicate*predicate=[NSPredicatepredicateWithFormat:@"ANYaddedOn.uniquelike%@",[T3UtilityidentifierForDate:date]];request.pred
我是CoreData的新手,在Apple开发者网站上找不到我需要的帮助。我在我的.xcdatamodeld文件中定义了一个获取请求,但现在我找不到如何使用它?这是获取请求的定义:我假设获取请求以:开头letfetch=NSFetchRequest(entityName:"Category")但我不知道如何通过名称使用提取请求。(项目是用Swift3写的) 最佳答案 Bharath的回答是关于如何在代码中创建和执行提取请求。这通常是您将如何做的。但是,这实际上并不是您问题的答案。如果你真的像那样在核心数据模型中创建了一个名为“allC
当将NSFetchRequest结果类型设置为NSDictinaryResultType时,将返回零个对象。如果我删除setPropertiesToFetch和setResultType,将返回所有对象。有什么想法吗?NSFetchRequest*request=[[NSFetchRequestalloc]init];NSEntityDescription*entity=[NSEntityDescriptionentityForName:@"Alert"inManagedObjectContext:_managedObjectContext];[requestsetEntity:ent
我的核心数据模型:Person======personId(NSNumber)这是一道基础核心数据题,我有一个personIds数组(不是Person,只是NSNumber的id),我想获取数组中具有相应id的所有Persons.这就是我如何获取对应于一个id的人:NSFetchRequest*request=[[NSFetchRequestalloc]initWithEntityName:@"Person"];request.predicate=[NSPredicatepredicateWithFormat:@"personId=%@",onePersonId];我正在寻找一种方法来
我正在尝试从NSPredicate中获得不同的结果。我的代码:NSFetchRequest*request=[[NSFetchRequestalloc]init];NSEntityDescription*entity=[NSEntityDescriptionentityForName:@"Members"inManagedObjectContext:context];request.entity=entity;request.sortDescriptors=[NSArrayarrayWithObject:[NSSortDescriptorsortDescriptorWithKey:@"
我想按实体对NSFetchRequest的结果进行分组。这些实体都共享相同的抽象父级。例如:animal||-cat||-dogNSFetchRequest将includesSubentities设置为TRUE并将entity设置为animal。可以将NSFetchedResultsController的sectionNameKeyPath设置为entity.name但不可能对的sortDescriptors做同样的事情NSFetchRequest因为sortDescriptors应用于存储的属性(即数据库中的数据,而不是类中的方法)。因此,按实体类型分组的唯一方法是向父类(super