草庐IT

iphone - 核心数据实体关系不会在启动之间保存

我正在编写一个应用程序,它有四个主要实体,它们都通过关系链接在一起。有些是一对一的,有些是一对多的。在初始加载时,其中三个实体将其数据从本地存储的XML文件加载到应用程序,并且其中一个实体从Web下载XML并从中加载其数据。当应用程序加载时,它会执行检查以查看每个文件中的数据是否比它当前拥有的数据更新,如果是,它将用相应文件中的数据替换该实体中的所有当前数据。作为我在写作期间调试过程的一部分,我一直在强制删除所有数据。当调用删除函数并在应用程序启动时加载所有数据时,应用程序运行良好,所有实体和关系都按照应有的方式运行。但是,当我删除对delete函数的调用并执行检查并尝试从它存储的数据

ios - 如何将核心数据实体导出到 CSV 文件

我希望能够将我的核心数据实体导出到CSV文件,以保存应用程序的数据。我用谷歌搜索但一无所获。我的应用仅使用一个具有五个属性的实体。这些属性都是字符串,除了一个是十进制数字(带逗号或点)。如何导出具有所有属性的该实体? 最佳答案 您必须创建一个方法来执行此类操作,如下所示:NSString*separator=@",";NSString*cvs=@"";for(NSObject*objectinarrayOfObject){cvs=[NSStringstringWithFormat:@"%@%@%@%@%@\n",cvs,[objec

objective-c - Restkit 加载的嵌套核心数据实体导致 NSObjectInaccessibleException

我正在使用RestKit从我的RoR服务中获取对象,并使用CoreData来保存一些对象(更多静态类型的查找表对象)。TasteTag是那些持久对象之一:#ifdefRESTKIT_GENERATE_SEED_DBNSString*seedDatabaseName=nil;NSString*databaseName=RKDefaultSeedDatabaseFileName;#elseNSString*seedDatabaseName=RKDefaultSeedDatabaseFileName;NSString*databaseName=@"Model.sqlite";#endifRK

iPhone RestKit 如何加载本地 JSON 文件并将其映射到核心数据实体?

我正在构建一个双向Dropbox同步应用程序。我从核心数据加载对象,将它们转换为JSON并将它们发送到保管箱。但是,当我进行同步时,我会将一组本地JSON文件与DropboxJSON文件进行比较。如果检测到冲突,则应用同步逻辑。作为同步逻辑的结果,可以下载远程JSON文件并将替换本地JSON文件。所以我最终在本地文档目录中得到了一堆JSON文件。我如何使用RestKit使用我定义的映射将本地JSON文件反序列化回对象?RKTwitterCoreData从基于网络的JSON创建核心数据实体。我正在尝试对本地JSON文件执行相同的操作。有很多loadObjects方法,但它们似乎都适用于网

ios - 数组项未正确保存在核心数据实体中

我的问题是只有我的字符串数组的最后一项保存在所需的核心数据实体中。我有一个名为“itemNames”的多维数组。我将这个数组平面映射到一个简单的一维数组以遍历它。该循环为每个项目创建一个新项目,该项目保存在属性“calc_item”的核心数据实体“CALC_VALUES”中。newItem的控制台输出看起来是分面的。但是,当我加载实体“CALC_VALUES”的核心数据条目时,我收到控制台输出2。它显示只有最后一项“item9”保存在相应的实体中(参见控制台输出2)。我必须更改什么代码才能在遍历我的数组时保存所有项?代码(swift3):letcontext=(UIApplicatio

iOS:当我从前台切换到后台时,我丢失了核心数据实体

我正在使用Swift应用程序构建iPad,但我不知道如何在从前台切换到后台时保留我的实体。如果我关闭应用程序(从任务管理器)所有实体再次出现。我正在使用Apple提供的标准核心数据堆栈。如果我使用iCloud,则不会发生这种情况。有什么想法吗?我爬了StackOverflow,但找不到任何东西。谢谢。编辑:应用委托(delegate)//MARK:-CoreDatastacklazyvarapplicationDocumentsDirectory:NSURL={//ThedirectorytheapplicationusestostoretheCoreDatastorefile.Thi

ios - 具有多个 View Controller 的 Swift 3 中的核心数据实现

我从事iOS开发已有3个月了,目前我正在使用tableviewcontrollers和viewcontrollers使用多个ViewController(~12)在Xcode8.2中构建主从应用程序。我已经利用基础知识在单个ViewController中保存和获取核心数据,并将数据推送到另一个ViewController。但这就是我被困的地方。许多关于Apple文档的教程和多次审查我仍然坚持如何跨多个ViewController(以及因此多个swift文件)使用CoreData。如果有人知道涵盖该主题的优秀教程,将不胜感激。或者,如果您可以推荐以这种方式使用CoreData的最佳方式,

swift - 将模块名称添加到核心数据实体

我无法理解thisnotefromApple's"UsingSwiftwithCocoaandObjective-C"的含义:Swiftclassesarenamespaced—they’rescopedtothemodule(typically,theproject)theyarecompiledin.TouseaSwiftsubclassoftheNSManagedObjectclasswithyourCoreDatamodel,prefixtheclassnameintheClassfieldinthemodelentityinspectorwiththenameofyourmo

ios - 在运行时动态创建核心数据实体

我需要能够在运行时创建新的核心数据实体。我已经编写了以编程方式创建对象的代码,但是,我无法在运行时添加实体,因为模型是不可变的。我的问题和这个帖子类似,但是没有满意的答案:Howtodyanmiccreateanewentity(table)viaCoreDatamodel?有关更改核心数据模型的文档说明:Managedobjectmodelsareeditableuntiltheyareusedbyanobjectgraphmanager(amanagedobjectcontextorapersistentstorecoordinator).Thisallowsyoutocreate

ios - 核心数据实体唯一约束不起作用

我正在尝试使用新的实体约束检查器在核心数据中设置约束(以使项目的名称唯一)。我读过的所有内容都说这很简单——设置约束并处理错误。我没有收到任何错误,并且可以根据需要多次添加相同的条目。该应用确实需要IOS9.0,Xcode工具要求设置为7.0约束category1Name是一个字符串。我的addItem代码是:funcaddNewRecord(){//checktobesuretheentryisnotemptyif(categoryTextField.text==""){//promptrequiringanameletac=UIAlertController(title:nil,m