我有2个具有以下关系的CoreData实体(Person、Pet):一个人可以拥有多个宠物。因此,存在来自Person->Pet的一对多关系。我想获取所有的人,按照他们拥有的宠物数量排序,拥有最多宠物的人排在第一位,拥有最少宠物的人排在最后。在获取人员列表时,我尝试使用如下所示的NSSortDescriptor:[NSSortDescriptorsortDescriptorWithKey:@"pets.count"ascending:NO]我认为“人”的“宠物”属性允许我使用NSSet的计数属性进行排序。唉,CoreData提示这个错误:Fetchexceptionto-manykey
我正在iOS应用程序的MacOSSierra上使用Xcode8和swift。几个月前我意识到SQLDebug停止工作...(它曾经在我的应用程序中工作)...我创建了一个启用了coredata标志的新空项目..然后我创建了一个带有属性的实体,我在ViewDidLoad中执行了这个函数,Xcode没有记录sqlfuncfetchAllData(){//1delegateletappDelegate=UIApplication.shared.delegateas!AppDelegateletmanagedContext=appDelegate.persistentContainer.vie
假设我有一个实体Fragment,它有一个字符串属性'text',我想查询Fragment的列表,其text的长度为5:[NSPredicatepredicateWithFormat:@"position==%@ANDtext.length==%d",pos,5];它不起作用(即不返回任何结果),但如果我在查询中删除text.length它起作用并且我确定存在长度为5的文本,那么我需要将其更改为什么?谢谢! 最佳答案 NSPredicate中没有字符串的长度属性。请改用正则表达式。您的谓词应如下所示:[NSPredicatepred
我正在尝试将具有属性类型Date之一的托管对象保存到managedObjectContext。代码如下:reminder.eventDate=selectedDate;NSLog(@"Date:%@",selectedDate);NSError*error=nil;if(![reminder.managedObjectContextsave:&error]){NSLog(@"Unresolvederror%@,%@",error,[erroruserInfo]);abort();}在上下文保存过程中,程序因SIGABRT而崩溃。这是控制台日志:2011-02-2800:50:18.81
想我会在此处发布针对已知错误的完整问题/答案:当从以前的版本升级到Xcode7(稳定版/测试版)时,您的构建突然给您一个新的警告:“缺少当前版本声明”用于您的CoreData模型文件。最糟糕的是,双击此警告没有任何效果,并且Xcode中没有关于解决方案的明显提示。你是如何解决这个问题的? 最佳答案 注意:这是在Xcode6.4和Xcode7beta3上测试的-从Xcode7beta4开始,似乎有一个内置解决方案,手动创建文件不再有效-请参阅已接受的答案打开终端,导航到您的项目目录和模型文件-您的命令应如下所示:cd/Users/YO
嗨,我正在处理3个实体(Class、Students、ExamRecord)及其关系区域的核心数据:Class>StudentsExamRecord我创建了一个谓词来获取第5类的学生列表。NSString*fmt2=@"studentsToClass.className=%@";NSPredicate*p2=[NSPredicatepredicateWithFormat:fmt2,@"5th",nil];有了这个,我得到了第5类的所有学生现在我还想对获取的学生应用另一个过滤器。获取考试记录“result”为“Pass”的学生。result是ExamResult实体中student的一个
设置想象一下作者和一本书之间的以下关系:[Author]--hasmany-->[Book]使用restkit,我有一个Author模型和一个Book模型,我创建了Author和Book之间的关系,如下所示:[authorMappinghasMany:@"books"withMapping:booksMapping];我现在可以通过作者的属性(property)访问作者的书籍:@property(strong,nonatomic)NSSet*books;到目前为止一切顺利。同样,我想通过它的属性访问一本书的作者:@property(weak,nonatomic)Author*autho
我是Swift和iOS开发的新手。这可能是我的一个简单误解。我正在使用核心数据。我的实体中有四个属性:"title"类型String“经度”、“纬度”类型十进制“时间戳”类型日期在下面的代码中,我收到错误“'[Locations]'isnotconvertibleto'()'”。importUIKitimportCoreData@objc(Locations)classLocations:NSManagedObject{@NSManagedvartitle:String@NSManagedvarlongitude:Double@NSManagedvarlatitude:Double@N
我正在浏览NSArray并发送我在CoreData上获得的内容,如下所示:letjson2:NSArray=NSJSONSerialization.JSONObjectWithData(data.dataUsingEncoding(NSUTF8StringEncoding)!,options:NSJSONReadingOptions.MutableContainers,error:&error)as![NSArray]fordictinjson2{varapps=[String]()//CreationdulienverslabaseSQLiteletentityDescription
几个小时以来我一直在努力解决一个问题-当我尝试将一些数据保存到我的CoreData时-一切都很好,但是当我重新启动我的应用程序时,关系丢失了。是1:n的关系,逆关系在这里(有多个逆关系,其他都可以)当我使用sqlite-viewer检查时,机会被保存到数据库中,但是当我重新加载应用程序时,那1个关系就消失了。这里还有另一个问题,但是:该解决方案对我不起作用(而且似乎该解决方案不适用于每个人)——而且它已有3年以上历史了。提前致谢这里有更多信息。TaskCraft和Craft之间的关系,如下图所示:我的CoreData对象是:TaskCraft@NSManagedvartaskcraft