草庐IT

CoreData

全部标签

iphone - 递归 CoreData 属性

我有一个关于潜在愚蠢的数据库设计的潜在愚蠢问题。假设我有这样的设计(在一个使用CoreData的iOS项目中):A级-名称:NSString-child:A类对象的NSSet-父级:A类对象所以这是一个简单的父/子设置。这一切都很好。现在,我想做到这一点,如果A类对象没有为“name”定义值,则搜索其父对象,直到找到一个定义了“name”的对象并返回该值。这是一件棘手的事情,因为我的自然react是像这样覆盖name的getter:-(NSString*)name{returnname=!nil?name:self.parent.name;}但这不起作用,因为必须通过self.name

iphone - iOS CoreData 更新实体对象

我正在为一个iPhone应用程序实现一个汽车管理器,但我无法保存一辆新车。所以我有一个“汽车”实体(和每个加载的数据库),包含多个属性。我有2个bool值“保存”和“选择”来跟踪用户添加到他的列表中的汽车(如果添加,保存=1)以及当前选择的汽车。所以当我创建一辆新车时,我取消选择旧车(selected=0),并想修改新车以设置其属性saved=1和selected=1。这是我的功能:-(IBAction)save{//Disablethepreviouscarselection.[selfdeselectCurrentSelectedCar];//Addnewcarassavedand

ios - CoreData 获取实体

我有一个非常基本的问题。如果我有两个实体,它们之间有关系(可以说entityOne与entityTwo有一对多关系)。当我获取entityOne时,它​​会自动获取它的关系吗?还是我也必须获取它们并将它们分配给相应的实体?我认为在聊天中问这个问题实际上会更好,因为这是一个简单的问题,但我还没有所需的声誉。由于太短,我无法发布我的问题,所以我会再问一个问题。在同一个项目中,我有一个获取实体的rootViewController。现在,如果我想添加一个事件,我必须将用户发送到另一个View,使用textFields等。我最终为每个viewControllers创建了一个数组“eventAr

iphone - mergeChangesFromContextDidSaveNotification 后 CoreData 关系为零

iOS上的CoreData有一些真正奇怪的行为。我的主线程有一个NSManagedObjectContext,用于从SQLLite持久存储中读取数据并将其显示给用户。我还有一个由NSOperationQueue管理的后台进程。这些后台进程创建一个NSMangedObjectContext,从远程服务器获取数据,并将该数据保存到本地核心数据存储。我已经注册了NSManagedObjectContextDidSaveNotification,当我收到这些通知时,我在主线程的NSManagedObjectContext上调用了mergeChangesFromContextDidSaveNot

objective-c - CoreData 如何使用 Search 和 ARC 过滤 NSFetchedResultsController

我找到了这个通过NSFetchedResultsController进行搜索的完美答案:https://stackoverflow.com/a/4481896/1486928编辑:显示问题的项目:http://cl.ly/2x0C0N0E4240它看起来真的很棒,只是它不是为与ARC一起使用而编写的,我试图只删除所有“保留”、“释放”、“自动释放”。它仍然有效,大部分情况下,问题是,当我在搜索栏中输入一个字符时,它会按预期显示过滤后的表格,但它只需要1个字符(如果你添加更多它什么都不做)然后每隔一个“搜索”将显示第一个只用了1个字符的搜索的结果。我已经研究了2天,将NSlog放在任何地

objective-c - CoreData循环改变关系

我有一个像这样的简单模型:itemcategory-->category和以下数据:itemA->categoryblueitemB->categoryblueitemC->categoryblueitemD->categorygreenitemE->categorygreen我想要实现的是将类别为绿色的所有项目更改为蓝色。以下代码只产生了一个错误:两个类别已经存在:blueCategorygreenCategoryfor(Item*aItemin[greenCategory.items]){[aItemsetCategory:blueCategory];}错误:'NSGenericE

objective-c - CoreData 模型更新崩溃

当我更新我的CoreData模型时,应用程序崩溃了,所以我必须删除旧应用程序,然后重新安装。这对我来说很好,但我的问题是:我如何告诉我的客户他们必须在重新安装之前删除该应用程序?这似乎太复杂了……我只是向模型添加1个附加字段,仅此而已。有没有更好的方法来处理这个问题?谢谢 最佳答案 您需要设置数据库迁移...以便在客户更新时将客户的现有数据升级到最新的数据模型。对于某些更改,CoreData可以为您完成。对于其他人,您必须自己编写迁移代码。也许从这里开始:https://developer.apple.com/library/mac

iphone - 保存上下文中的 CoreData 错误,NSPersistentStoreCoordinator 没有持久存储

我已经查看了所有我能找到的类似问题,但他们的解决方案都不适合我。一个问题可能是在我取回JSON并从webAPI解析后,将实体添加到上下文(成功)和保存上下文发生在不同的线程上。但是上下文是在第一次使用manageContext和持久存储时设置的,如下所示。所以它会在解析之后发生在那个线程上。确切的错误:***Terminatingappduetouncaughtexception'NSInternalInconsistencyException',reason:'ThisNSPersistentStoreCoordinatorhasnopersistentstores.Itcannot

ios - 休息套件 : Not able to perform mapping using coredata

我正在使用restkit0.20.3和Xcode5。没有核心数据,我能够执行所有restkit操作,但是当我尝试使用核心数据时,我什至无法执行GET由于某些问题。我想不通。我是核心数据的新手。所以请帮助。这是我的代码:AppDelegate.m@implementationCardGameAppDelegate@synthesizemanagedObjectContext=_managedObjectContext;@synthesizemanagedObjectModel=_managedObjectModel;@synthesizepersistentStoreCoordinato

ios - CoreData managedObjectContext save 违反了 Z_PK 的 UNIQUE 约束

我在iOS应用程序中使用CoreData来管理学习新语言的“闪存卡”应用程序中的单词。我遇到的问题是,当我为新实体设置数据并尝试将其保存到数据存储时,我违反了对sqlite数据库的UNIQUECONSTRAINT要求。有问题的列是Z_PK列,据我所知,它是最初创建数据存储时由iOS核心数据方法创建的主键。这是我尝试保存时收到的UNIQUECONSTRAINT消息:2015-03-1409:25:14.427ghoti[25856:1107373]CoreData:error:(1555)UNIQUEconstraintfailed:ZGHOTIENTITY.Z_PK(lldb)Z是所有