神奇记录持久性问题

时间:2012-06-27 13:54:39

标签: ios cocoa core-data magicalrecord

我有以下问题:

首先......我使用MagicalRecord作为整个CoreData的东西

  • 我有两个实体:A和B
  • 他们彼此之间有关系
  • 我创建了一个实体A实例
  • 我创建了几个实例ob实体B并设置了关系
  • 我不调用[[NSManagedObjectContext defaultContext] save];
    • 没关系
    • 关系正常......我可以使用findByAttribute方法
    • 检查它
  • 如果我称之为保存,那么关系就会被破坏......
    • 使用findByAttribute的相同检查不再能找到结果

我完全不知道我做错了什么,或者它是CoreData / MagicalRecord中的错误......

我制作了一个展示问题的示例项目。 https://github.com/bliblablo/MagicalRecordsProblem

您可以按照以下步骤查看问题:

  • 点击“创建”
  • 点击“添加”
  • 点击“检查”
  • 查看结果的日志输出
  • 点击“保存”
  • 再次点击“检查”并在日志中查看问题:)

任何帮助真的很感激!!! 非常感谢!

2 个答案:

答案 0 :(得分:4)

听起来我在临时ObjectID中遇到的问题没有在默认上下文中刷新。

有关详细信息,请参阅NSPredicate not executed上的答案。

如果您尚未对其进行排序,请尝试在各个点检查NSManagedObject个实例的ObjectID。特别是如果您(或魔法记录)将对象用作NSPredicate的一部分来执行稍后的提取。

答案 1 :(得分:0)

我认为这不是MR bug。这是来自核心数据的错误。看这篇文章。 http://wbyoung.tumblr.com/post/27851725562/core-data-growing-pains