我有表A和B。A和B具有一对多关系。我正在从A获取数据,但是在获取数据时我在NSSet中获取了B的所有数据。但是我想要B的一些特定数据当我从A获取数据时在NSSet中。 最佳答案 您可以在NSSet上应用谓词。NSSet有实例方法--(NSSet*)filteredSetUsingPredicate:(NSPredicate*)predicateExamplefromappledocumentationNSSet*sourceSet=[NSSetsetWithObjects:@"One",@"Two",@"Three",@"Four
我有一个单例类,它使用GCD(GrandCentralDispatch)队列在后台将JSON对象保存到CoreData数据库。这在大多数情况下都能完美运行,但在iPad2和iPadMini设备上,我遇到了一些进程卡住问题。我的设置非常简单。我有一个设置为串行运行的后台调度队列(backgroundQueue),并且我有一个单独的NSManagedObjectContext实例用于后台队列。当我想将某些内容保存到数据库时,我调用开始保存过程的方法,在该方法中,我使用dispatch_async在后台线程上调用我的保存逻辑。所有处理逻辑运行后,我保存后台MOC,并使用NSManagedOb
我在从RestKit世界中的CoreData获取数据时遇到了一些问题。我能够成功地将JSON数据从服务器映射到我的NSManagedObject实体。但是我不知道如何获取RestKit存储在本地存储中的数据。我尝试使用下面的代码从本地存储中获取数据:NSManagedObjectContext*context=[RKManagedObjectStoredefaultStore].mainQueueManagedObjectContext;//NSManagedObjectContext*context=[[[RKObjectManagersharedManager]managedObj
我有3个实体:Topic>subTopic>Certificate.我想要的是所有主题的列表,其中存在证书(没有重复项)。根据我的初步阅读(主要是这个问题:CoreDataperformance:predicateonmoreto-manyrelationships),我发现最有效的方法(假设可能)是从证书级别开始,并从证书列表中导出主题列表。但就我所知。如何指定当我想要返回主题列表时,我想要的列表将基于所有证书?是否可以为可以返回主题列表的fetchrequest指定谓词。有没有一种方法可以做到这一点,而无需手动跟踪每个证书的关系并将找到的主题添加到NSSet或其他东西?感谢您的任何
我正在对iOS应用程序进行重大更新。假设我们有两个分支,develop包含当前AppStore上的内容,feature/new_version包含主要更新。feature/new_version有很多模型更改,因此那里有一个新的模型版本可以添加/删除实体、属性等。另一方面,我们有一些小的改进和develop中的错误修复,这也导致了新模型版本的创建(这些更新也已提交到AppStore)。现在我遇到了两个数据模型截然不同的分支。问题是:如果我将“缺失”属性添加到feature/new_version模型,当我将主要更新提交到AppStore时,核心数据是否足够智能以进行自动轻量级迁移?或者
我一直在开发一个应用程序,用户每天输入存储在核心数据中的数据(两个属性NSNumber和一个NSDate),我想改进它通过允许用户通过单击按钮从外部文件(例如csv或任何其他支持的格式)导入数据。关于如何有效地执行此操作的任何建议?谢谢。编辑:只需添加csv文件的屏幕截图以及作为NSArray的csv解析器的输出。基本上需要单独获取属性并在单击按钮时将它们存储在核心数据中。-作为csv的输入文件:-csv解析器输出示例(NSarray): 最佳答案 我最近需要实现类似的目标。我的项目团队的几个成员想把我们的应用程序原型(protot
我正在使用核心数据在我的应用程序中实现一个简单的登录身份验证。但是登录功能只有在我输入正确的用户名和密码时才有效,否则我会得到一个异常:[__NSArrayIobjectAtIndex:]:index0beyondboundsforemptyarray'"我知道这是因为我的代码不正确(即我只检查是否相等)。但我不知道如何检查不相等。谁能帮我执行这个使用核心数据的登录验证...代码:AppDelegate*appDelegate=[[UIApplicationsharedApplication]delegate];NSManagedObjectContext*context=[appDe
我正在尝试向实体类添加额外的属性和方法,我想将它们与自动生成的NSManagedObject子类分离。CoreData自动生成的类定义文件非常有用,我喜欢能够更改数据方案并快速重新生成它们,而不用担心会破坏我的扩展,因此子类化感觉是正确的整体方法。但是当我这样做时(例如,Person的子类称为MyPerson)—这似乎起作用了,但是在使用期望的MagicalRecord等工具时会导致混淆匹配类名的实体名。(即[PersonfindAll]有效,但[MyPersonfindAll]失败,因为它找不到名为MyPerson的实体。)感觉我的头撞墙太多了;在这里追求的正确设计模式是什么?感谢您
我有一个字典对象数组friendsArray,看起来像这样:({name="jamesp";phone=345345345;},{name="samb";phone=345345345;},{name="aarons";phone=346346456;})现在我像这样将它存储到coredataNSMutableDictionary*friends=[[NSMutableDictionaryalloc]init];for(intcount=0;count这是SQL浏览器的截图它正在存储数据但复制了这个字典,我不知道为什么。 最佳答案
我有一个包含两个实体的简单数据模型:Person和Company。一个人可以分到很多公司,一个公司也可以分到很多人。我用1家公司和2个人填充了数据库,并将所有人分配给了公司。在填充数据库的过程中,CoreData会产生如下日志:CoreData:sql:INSERTINTOZCOMPANY(Z_PK,Z_ENT,Z_OPT,ZNAME)VALUES(?,?,?,?)CoreData:sql:INSERTORREPLACEINTOZ_1PERSONS(Z_1COMPANIES,Z_2PERSONS)VALUES(1,2)CoreData:sql:INSERTORREPLACEINTOZ_