魔法记录添加对象,不同上下文错误

2024-04-21

我在我的应用程序中使用 Magical Record,并希望为用户添加添加“注释”的功能,“注释”是“条目”的子项。

我添加了这段代码:

    [MagicalRecord saveWithBlock: ^(NSManagedObjectContext *localContext) {
        Note *newNote = [Note MR_createInContext: localContext];

        newNote.content = noteContent;
        newNote.name = @"User Note";

        [self.entry addNotesObject: newNote];
     }
                      completion: ^(BOOL success, NSError *error) {
                          if (error != nil)
                          {
                              // show alert
                          }
                          else if (success)
                          {
                              [[self tableView] reloadData];
                          }
                      }];

我在最后一行不断收到的错误是“非法尝试在不同上下文中的对象之间建立关系‘条目’”

我尝试将“entry”和“newNote”的上下文设置为“localContext”,但仍然遇到相同的错误。

我缺少什么?


self.entry是在不同的上下文中创建的,因此您无法从该上下文中访问它。 代替:

[self.entry addNotesObject: newNote];

你应该首先找到self.entry对象在localContext:

[[self.entry MR_inContext:localContext] addNotesObject: newNote];

您可以在以下位置找到有关在并发环境中使用 MagicalRecord 的说明:在线程上执行核心数据操作 https://github.com/magicalpanda/MagicalRecord/blob/develop/Docs/Threads.md。虽然很短,但我认为还是值得一读的核心数据编程指南 https://developer.apple.com/library/ios/documentation/cocoa/conceptual/CoreData/cdProgrammingGuide.html#//apple_ref/doc/uid/TP30001200-SW1即使您不直接使用 CD。

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

魔法记录添加对象,不同上下文错误 的相关文章

随机推荐

  • Android html5 输入 type="password" 和数字键盘

    我的任务是为 Android 和 iOS 设计一个网页 您应该在其中输入您的信用卡信息 我无法获取在 Android 中打开数字键盘的安全代码字段 这是我距离最近的一次 它适用于 iOS 但不适用于 Android
  • 用三种颜色的渐变填充面板

    我正在做一个项目 我必须使用 C 做一种颜色选择器 所以我决定在 Win Forms 应用程序中建立一个具有此背景的面板 背景应具有 RGB 三种颜色的渐变 红色 0 255 蓝色 0 255 和绿色 0 但我找不到任何关于我应该为此使用什
  • 模板组件启动器内的离子标签组件未渲染

    我克隆了stencil component starter from https github com ionic team stencil component starter https github com ionic team ste
  • Android 上未原生找到 RNFirebase 核心模块

    我正在尝试在 Android 平台上运行现有的 React Native 应用程序 但收到如下图所示的错误 我已经执行了下面提到的所有步骤http invertase link android http invertase link and
  • Ionic2 - 如果超时则取消 Api 请求

    在我的应用程序中 我通过表单保存数据并调用 Api 进行相同的操作 为了检查它们的互联网连接是否缓慢 我在 ionic2 中使用超时 如下所示 savedata let headers new Headers headers set Con
  • 创建较慢的过渡。 TransitionManager.beginDelayedTransition();太快了

    我正在创建一个过渡 当单击按钮时 将执行以下方法 该方法改变了图像视图的大小和位置 并将其淡出 我在用TransitionManager beginDelayedTransition is too fast 放慢转变速度 但它仍然进展得太快
  • 为动态图像生成 CSS 精灵

    我有一个网页 其中包含大约 20 50 个动态图像 从非静态源提供的图像 这些图像通过基于请求 URL 的 servlet 提供 这会导致每个图像生成一个请求 从而导致性能下降 如果这些图像是静态的 我将创建一个 CSS 精灵并用一个请求替
  • 直线和水平线在断点处连接的分段回归

    我想做一个带有一个断点的分段线性回归 其中回归线的第二半有slope 0 有一些关于如何进行分段线性回归的示例 例如here https stackoverflow com questions 15874214 piecewise func
  • 如果我在 grails 中使用 groovy sql 类,它是否使用 grails 连接池?

    来自 sql 文档中的以下示例 如果我使用这两种方法之一在 Grails 服务类中创建 sql 实例 它会使用 Grails 连接池吗 它会参与任何交易功能吗 我需要自己关闭连接吗 还是会自动回到池子里 def db url jdbc hs
  • 如何在C中将RGB转换为HSL?

    如何在 C C 中将 RGB 转换为 HSL Note This is a short self answer I posted it here so people can find it quickly with a search 翻译代
  • 我可以在 asp.net 4.0 站点中托管 .net 2.0 虚拟目录吗?

    我们在 2 0 网站中运行 NET 4 0 虚拟目录没有任何问题 但相反的方式却给我们带来了一些问题 这是可以理解的 但是有没有办法解决这个问题呢 它们使用不同的应用程序池运行 我们可以让虚拟目录跳过网站的 web config 并直接转到
  • 从提升的进程正常执行进程

    是否有某种方法可以从提升的方式以非提升的方式启动流程 我的设置以提升的方式启动 当它完成时 它只会启动主应用程序 由于设置被提升 主进程也会被提升 这是不可取的 对此最好的解决方案是什么 这是一个问题 Vista Win7 似乎没有 API
  • Horizo​​ntalScrollView:带有 getView() 的 CustomAdapter 不会像 ListView 那样重用 ConvertViews

    在我过去的一个项目中 我实现了 时间选择器轮播 它基于一个HorizontalScrollView 用户可以在滚动该视图时选择时间 时间值是根据 X 偏移计算的HorizontalScrollView 我想在 github 上分享这个项目
  • 为什么我在访问最终局部变量时会出现 Java 中的 InstantiationException?

    我正在玩一些代码来制作 类似闭包 的构造 顺便说一句 不起作用 一切看起来都很好 但是当我尝试访问代码中的最终局部变量时 出现异常InstantiationException被抛出 如果我通过完全删除局部变量或使其成为类属性来删除对局部变量
  • 修复 iOS7 上主体背景随页面滚动的问题

    我使用以下 CSS 来创建固定的主体背景 除了新的 iOS7 之外 它几乎可以在所有浏览器上运行良好 后者的背景不再固定 它随页面滚动 知道如何解决这个问题吗 body background color 000 background ima
  • Coldfusion SQL 插入循环

    遇到一个问题 我想我可以看看是否有人对如何解决它有任何想法 基本上 我在单个变量下传递多个值 并且我想使用循环来提取每个单独的值并同时插入它 例如 ischecked 是我用来传入设备值的变量 如果我要选择两个设备 按提交并将变量 form
  • std::valarray 的运算符* 有什么问题?

    考虑以下 MCVE 其中我有两个值数组 其中w是两次v 在这里尝试一下 https godbolt org z JkXPNN include
  • 语音识别减少可能的搜索结果

    我开始使用 android sl4a 和 python 进行语音识别 到目前为止 它运行良好 我的用户应该用他的声音输入 0 到 9 之间的数字 有没有办法告诉android只搜索这些数字 从而减少识别时间 可能还有错误 不可以 您无法更改
  • Hello world WebGL 并行性示例

    围绕 WebGL 似乎有许多用于运行并行处理的抽象 例如 https github com MaiaVictor WebMonkeys https github com MaiaVictor WebMonkeys https github
  • 魔法记录添加对象,不同上下文错误

    我在我的应用程序中使用 Magical Record 并希望为用户添加添加 注释 的功能 注释 是 条目 的子项 我添加了这段代码 MagicalRecord saveWithBlock NSManagedObjectContext loc