草庐IT

x-coredata

全部标签

ios - CoreData(+ iCloud)产生无效的模型状态

我正在使用CoreData和iCloud在设备之间同步数据。每次iCloud导入后(观察NSPersistentStoreDidImportUbiquitousContentChangesNotification),我运行一个简单的重复数据删除算法来查找和删除重复数据。保存更改后,我在控制台中看到来自CoreData的警告,即特定实体实例(已被重复数据删除算法删除)的所有属性和关系都替换为nil/0。CoreData:warning:AnNSManagedObjectContextdelegateoverrodefaulthandlingbehaviortosilentlydelete

ios - 在 CoreData NSSet 上使用 'filteredSetUsingPredicate' 时崩溃(NSInvalidArgumentException : set argument is not an NSSet)

假设我有NSManagedObjectZoo,他得到了一个到名为cats的“Cat”的连接oneToMany,这个连接是NSSet。当我使用函数'filteredSetUsingPredicate',我遇到了以下代码的崩溃:Zoo*zoo=//intanceofourzoowithalltheanimals-fromcoredataNSPredicate*predicate=[NSPredicatepredicateWithFormat:@"catSize==Big"];NSArray*arrayOfCats=[zoo.catsfilteredSetUsingPredicate:pre

iphone - CoreData DetailTableView BAD_ACCESS 错误

也许我不打算使用CoreData显示选定行的详细信息,但我无法弄清楚为什么我会收到“BAD_ACCESS”错误。我用谷歌搜索,找不到我要找的东西。基本上,我使用CoreData来填充TableView的数据。它检索所有实体的所有标题属性。当用户单击一行时,我有一个详细View需要显示该实体的描述。我想我需要在我的DetailViewController中为新的NSFetchRequest创建一个新的NSManagedObjectContext和一个新的NSEntityDescription,然后使用NSPredicate来表示“wheretitle=[userselectedtitle

iphone - 使用 coredata 准备应用发布

我即将结束创建我的新项目的1.0版。我第一次使用coredata。该应用程序仅使用1个模型,所有数据将由用户提供(因此我不使用该应用程序加载任何数据)。当然,我已经在为不同分支上的应用程序进行更新,并在未来看到数据模型的一些变化。模型上的更改将仅包括:添加实体向现有实体添加属性实体之间没有任何关系。我已通读:iPhoneappwithCoreData从那里我继续:LightweightMigration,在那里我读到了coredatas能够在变化很小的情况下自动更新其模型(如果我没看错的话,我的变化包含在那里)。在苹果迁移文档中我找到了自动迁移的代码:NSError*error=nil

java - CoreData 和 Hibernate 的区别

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。CoreData在iOS中被解释为“模式驱动的对象图管理和持久性框架”,主要与SQLite一起用作持久性存储。不一定,例如,您可以仅在内存中使用它,而无需将任何托管对象保存到像SQLite这样的持久性存储中。看看Hibernate,它似乎有很多相似之处,但我质疑它们之间的主要区别。模式驱动CoreData使用模式,主要是(在iOS中)包含实体等的xcdatamodel文件。据我所知,Hibern

iphone - 在 CoreData 中使用 NSInMemoryStoreType 会丢失数据吗?

在CoreData中,当使用NSInMemoryStoreType持久存储时,只要应用程序打开,数据是否会一直缓存在内存中,或者这些数据使用的资源是否可以被iOS回收?假设iPhone应用程序在多任务处理时可以后台运行,并且iOS会为在后台运行的应用程序回收资源。这是否意味着内存缓存中的持久存储在某些情况下可能会丢失?假设应用程序长时间处于后台状态,并且用户此后访问并使用了许多不同的应用程序。如果有人能阐明这个主题,那就太好了。 最佳答案 CoreData中的某些资源当然有可能是NSPurgeableData对象,因此如果存在内存压

ios - CoreData故障-如何获取数据

我研究了大量关于CoreData返回错误而不是实际值的问题和文档:Relationship'whiskers'faultonmanagedobject(0xb7abab0)当我试图计算mustache的数量时会发生这种情况,例如:self.numWhiskersLabel.text=[NSStringstringWithFormat:@"%d",cat.whiskers.count];即使我尝试直接记录mustache集,我仍然会出错:NSLog(@"whiskers:%@",cat.whiskers);我理解“在需要访问该对象的实际值之前,核心数据不会返回完整的对象。在此之前,您返回

ios - CloudKit 和 CoreData 默认值

我正在使用NSPersistentCloudKitContainer设置核心数据,以便我的数据自动集成CloudKit。我遇到的问题是我的实体中不能再有可选属性。我的所有可选属性都会生成编译器错误[entity].[attribute]musthaveadefaultvalue这是一个错误吗?这个问题有好的解决方法吗? 最佳答案 它似乎已在Xcode11beta3中修复。 关于ios-CloudKit和CoreData默认值,我们在StackOverflow上找到一个类似的问题:

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