草庐IT

nsmanagedobject

全部标签

iphone - 核心数据保存问题: can't update transformable attribute (NSArray)

我的CoreData应用程序有一个奇怪的问题。我的应用程序中有三个实体,但今天我发现其中一个有问题。我的问题实体称为Invoice,它有许多属性,包括Products。它编码为NSDictionaries的NSArray(通过默认的NSValueTransformer)。一切正常-我创建了我的发票、它的客户、它的产品等等。一切正常。但是,当我从列表中选择我的发票然后尝试编辑其产品并单击“保存”按钮时,我的保存仅在我的应用程序终止之前有效。问题仅出在我的products数组上-其余的(例如付款日期、客户等)保存。我在做什么我通过Invoice对象传递NSManagedObject*inv

ios - Core Data 未将 NSManagedObject 实例作为应用程序委托(delegate)的属性触发故障

我将登录用户的数据从服务器导入到一个名为“用户”的核心数据实体中。我还将此特定用户对象的引用保留在我的AppDelegate上(作为属性),以便我可以在我的应用程序的其他地方访问它。我面临的问题是,当我按下另一个ViewController并尝试访问appdelegate.loggedInUser.id时,我看到“id”为零。调试器为对象显示了这个:$24=0x0b28ad30(entity:User;id:0xb261160;data:)我的理解是,当我尝试访问该对象的某个属性时,CoreData框架会触发错误。我很困惑为什么在这种情况下我访问用户的“id”属性没有触发错误?编辑:这

ios - 为 bool 属性自动生成的 NSManagedObject 子类会导致警告

在CoreData模型中,我有一个名为TestEntity的实体。该实体有一个名为“deleted”的bool类型属性。如果我使用Xcode为该实体生成一个自动NSManagedObject子类,生成的类头如下所示:@interfaceTestEntity:NSManagedObject@property(nonatomic,retain)NSNumber*deleted;@end我理解为什么NSNumber用于bool属性。这一点和以前没有变化。问题是它现在向我显示2个警告:属性“已删除”的getter属性与从“NSManagedObject”继承的属性不匹配。属性类型“NSNumb

iphone - XCode4 无法正确生成 NSManagedObject 子类

我使用XCode4中的模型编辑器创建了一个模型。不久之后,我决定重命名我的实体。效果很好,但是当我尝试从它们生成NSManagedObject子类时,XCode使用旧的实体/类名称生成它们。这是一个已知错误吗? 最佳答案 我解决了。这不是错误。如果您单击实体,您还必须在检查器中更改类名。 关于iphone-XCode4无法正确生成NSManagedObject子类,我们在StackOverflow上找到一个类似的问题: https://stackoverflo

objective-c - 创建后 NSManagedObject 保留计数为 2

我想知道是否有人可以解释为什么新创建的托管对象的保留计数是2。这是我正在使用的代码:NSManagedObjectContext*context=[self.fetchedResultsControllermanagedObjectContext];NSEntityDescription*entity=[[self.fetchedResultsControllerfetchRequest]entity];Album*newAlbum=[NSEntityDescriptioninsertNewObjectForEntityForName:[entityname]inManagedObje

objective-c - Restkit [NSManagedObject managedObjectContext] 返回不同的实例

自从我将核心数据逻辑迁移到RKManagedObjectStore后,我遇到了严重的问题。我在ViewController的主线程中设置了一个NSFetchedResultsController,上下文设置为[NSManagedObjectmanagedObjectContext]:assert([NSThreadisMainThread]);NSManagedObjectContext*context=[NSManagedObjectmanagedObjectContext];NSFetchedResultsController*aFetchedResultsController=[

ios - 如何在 NSManagedObjects 的集合(NSArray 或 NSSet)上设置 KVO

我有一个iPad应用程序,它有一个实现NSFetchedResultsControllerDelegate的UITableViewController。(主要使用斯坦福iOS类(class)中的CoreDataTableViewControllercode。)我有一个辅助模型对象(self.locations),它是Location对象的数组,它是NSManagedObjects的子类。此数组驱动过滤我的主要fetchedResultsContoller的UISegmentedControl的内容。可以通过弹出窗口修改self.locations的内容。我想设置某种观察,以便我的主要U

ios - 存储但不将 NSManagedObject 保存到 CoreData?

我在我的应用程序中有一个简短的设置过程,我创建了一个NSManagedObject来存储个人的姓名和其他详细信息,但是在这个设置过程中,我不想保存对象,直到用户在设置结束(以防万一他们出于任何原因取消设置)。那么是否可以在设置过程结束之前将包含我的信息的对象保留一小段时间,而不实际将其保存到CoreData中? 最佳答案 你也可以使用NSEntityDescription*ed=[NSEntityDescriptionentityForName:@"YourManagedObject"inManagedObjectContext:m

ios - 从 NSManagedObject 检索 NSManagedObjectContext

我已经寻找这个解决方案一段时间了,我总是放弃并找到解决方法,但是有谁知道如何从的实例中找到NSManagedObjectContext>NSManagedObject?我目前正在使用3个上下文,我想检索对象实例所在的上下文。有谁知道这样做的方法吗? 最佳答案 你试过吗NSManagedObject*myObj;//referenceinsomewayNSManagedObjectContext*objContext=[myObjmanagedObjectContext];? 关于ios-

ios - iphone NSManagedObject - 解除分配的正确方法?

我有一个NSManagedObject的子类,大部分属性都是动态的(由托管对象创建),但我有几个辅助属性被创建为@synthesize。释放这些对象的正确方法是什么??-(void)didTurnIntoFault{[self.randomVarrelease];[superdidTurnIntoFault];}或-(void)dealloc{[self.randomVarrelease];[superdealloc];} 最佳答案 覆盖didTurnIntoFault并在那里释放它们。托管对象在出现故障时不一定会被释放。来自doc