如何在 Core Data 中进行 NSManagedObject 的深度复制

2024-04-17

我正在尝试复制核心数据中现有的 NSManagedObject 和相关子对象。我似乎找不到一个简单的方法来做到这一点。

我有一个从核心数据数据库填充的 NSArrayController。我想获取 SelectionIndex 处的对象并进行深层复制,使其与同一父对象相关并复制所有子对象。

任何帮助表示感谢!

感谢 TechZen 提供的链接。我使用了该站点的示例代码并使用了以下调用代码:

RuleSetVersion *object = [[ruleSetVersionArrayController selectedObjects] lastObject];

NSString *parentEntity = @"RuleSet";

RuleSetVersion *newObject = (RuleSetVersion*)[self copyObject:object toContext:[self managedObjectContext] parent:parentEntity];

[newObject setRuleSetEffectiveDate:[[NSDate alloc] init]];
[newObject setRuleSetVersionLastModifiedDate:[[NSDate alloc] init]];

[newObject setRuleSet:object.ruleSet];

NSError *error;

if ([managedObjectContext save:&error] == NO) {
    [NSApp presentError:error];
}

这是相当复杂的。请参阅此答案及其链接的示例代码:

如何将 NSManagedObject 从一个上下文复制或移动到另一个上下文? https://stackoverflow.com/questions/2998613/how-do-i-copy-or-move-an-nsmanagedobject-from-one-context-to-another/2999393#2999393

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Core Data 中进行 NSManagedObject 的深度复制 的相关文章

  • 如何删除核心数据持久存储

    我需要删除我的持久存储 逐个对象执行此操作并不实际 因为我有超过 100 000 个对象 我试过这个 IBAction resetDatabase id sender NSPersistentStore store persistentSt
  • iPhone、核心数据和 JSON

    我有一个带有 API 的网站 它使用 JSON 发布信息 我可以很好地访问这个 API 但我真的很想使用 Core Data 将信息存储在 iPhone 应用程序中 有没有办法将持久存储连接到 JSON API 这样我就可以使用网站作为核心
  • 核心数据:3表连接?

    我知道 Core Data 不是数据库 有很多区别 是这个吗 在数据库中 我通常会有以下内容 A gt gt B gt gt C A 有很多 B B 有很多 C 查询 给我所有具有 c attr X 的 A 很容易写成 select fro
  • 使用 UIManagedDocument 在 ios5 中预加载核心数据数据库

    我正在尝试在我的应用程序中包含预加载的核心数据数据库 我正在使用这里给出的解决方案query https stackoverflow com questions 8683892 pre load core data database in
  • 两个托管对象上下文可以共享一个持久存储协调器吗?

    示例 我有一个持久存储协调器 它使用一个持久存储 现在有两个托管对象上下文 并且都希望使用相同的持久存储 两者都可以简单地使用相同的持久存储协调器 还是我必须创建 NSPersistentStoreCoordinator 的两个实例 如果我
  • NSFetchedResultsChangeDelete 未被触发

    以前有人遇到过这个吗 当我选择从 tableView 由 FRC 填充 中删除一行时 应用程序不会崩溃或挂起 它没有任何作用 删除按钮保持选中状态 如果我单击模拟器上的其他位置 删除按钮将取消选择并消失 但单元格永远不会从 UI 中删除 我
  • 多个 NSEntityDescription 声明 NSManagedObject 子类

    我正在创建一个允许我使用核心数据的框架 在框架的测试目标中 我配置了一个名为的数据模型MockModel xcdatamodeld 它包含一个名为MockManaged有一个单一的Date财产 为了测试我的逻辑 我正在创建一个内存存储 当我
  • 如何复制hashset和hashmap,Java是否使用指针?

    我有两个问题 First 我有一个返回 HashMap 的函数 为了读取返回值 我这样写 HashMap
  • 在代码中使用通用 Int - 在 Core Data iOS 中使用 32 位或 64 位 Int?

    我正在用 swift 编写一个应用程序 通过苹果的核心数据保存其数据 在我的代码中 所有整数都被声明为 Int 因为这样更灵活 并且编译器会根据代码运行的设备调整这些整数 但是 当我想使用核心数据保存这些 Int 时 我必须选择 32 位或
  • NSFetchedResultsController 获取请求 - 更新谓词和 UITableView

    在我的 iPhone Core Data 应用程序中 我将其配置为主从视图设置 主视图是一个 UITableView 它列出了List实体 List 实体与Task实体 称为 任务 并且任务实体与List称为 列表 When a List在
  • excel+powerpoint 如何决定重新缩放粘贴为图像的范围?

    我注意到 当您复制 Excel 中的范围 复制为图片 如屏幕所示 并将其粘贴到 PowerPoint 中时 生成的图像不会 100 缩放为原始图像 右键单击图像 转到格式设置并转到尺寸以查看比例信息 此外 这种缩放比例在不同的计算机上有所不
  • NSFetchedResultsController 并不总是为 NSFetchedResultsChangeMove 调用 didChangeObject:atIndexPath:forChangeType:newIndexPath:

    我在用着NSFetchedResultsController with sortDescriptors请求在其中填充大量结果的表 我注意到 当发生更改将行从表格底部附近移动到顶部时 didChangeObject atIndexPath f
  • iPhone |从头开始构建新版本的核心数据迁移

    我正在开发应用程序更新 这个版本完全是从头开始构建的 并且具有全新的功能coreData模型架构 我需要写coreData从旧模型迁移 我一直在寻找资源来写作coreData迁移但都需要旧模型文件 由于这个版本是全新的 所以我没有旧的模型架
  • 根据 .txt 文件中存储的列表复制文件

    我有一个源文件夹 目标文件夹 我想要从源文件夹复制到目标文件夹的文件列表 该文件夹已保存到 txt 文件 listtocopy txt 如下 不确定它是否重要 但它们是 Anabat ZC 文件 S5281925 35 S5282317 2
  • iOS 8 核心数据堆栈 - 致命错误:在解包可选值时发现 nil

    我对 iOS 开发比较陌生 决定实现自己的 Core Data 堆栈 替换 Apple 的默认堆栈 我必须对我的代码进行更改 显然 并且能够弄清楚它 但在这种情况下我不能 这是我的代码 import UIKit import CoreDat
  • 强制设置核心数据检查点?

    我编写了一个通过 Core Data 搅动大量数据的应用程序 用户在后台退出应用程序后 我会清理这些数据 由于 WAL 检查点似乎是导致 UI 暂停的主要原因 因此我还想强制使用 WAL 检查点 是的 我知道创建第二个核心数据堆栈 这也将完
  • 修复核心数据失败

    我的应用程序商店中有一个使用 Core Data 的应用程序 我必须在明天之前发布更新 但是 我在使用 Core Data 时遇到了一些问题 我错误地更改了 Core Data 中的模型 现在我的应用程序崩溃了 我尝试迁移数据 但当我在 i
  • NSFetchedResultsChangeUpdate 被触发而不是 NSFetchedResultsChangeDelete

    我有一个 NSFetchedResultsController 通过以下方式启动 NSEntityDescription myEntity NSEntityDescription entityForName MyEntity inManag
  • 如何在 Swift 中正确测试 Core Data

    已经有很多关于此的主题 但我还没有找到适用于 Swift Xcode 6 2 的解决方案 为了在 Swift 中测试 Core Data 支持的类 我生成了新的托管对象上下文 然后将其注入到我的类中 Given let testManage
  • 如何按月对获取的日期进行分组

    我将数据插入到日期类型的核心数据中 但是当我尝试从数据库中获取数据时 我无法按月对它们进行分组 您可以找到我尝试解决方案的代码 但它不起作用 let groupedDict Dictionary grouping self lessons

随机推荐