【发布时间】:2012-11-15 10:37:59
【问题描述】:
我正在使用 MagicalRecord 来保存一个名为“Me”的托管对象。这是我正在尝试的两种方法(第一种方法不保存数据,但第二种方法可以):
NSManagedObjectContext *localContext = [NSManagedObjectContext MR_contextForCurrentThread];
[Me MR_createInContext:localContext];
[localContext MR_save];
上面的方法不会持久化数据,但下面的方法会:
NSManagedObjectContext *localContext = [NSManagedObjectContext MR_contextForCurrentThread];
[Me MR_createInContext:localContext];
[localContext MR_saveNestedContexts];
为什么 MR_save 不起作用?
【问题讨论】:
-
那么每次存储新实体时调用 MR_save 和 MR_saveNestedContexts 是否重要?
-
从 2.0.8 版开始,如果您想确保将嵌套上下文持久保存到商店,请使用
MR_saveNestedContexts。如果您想保存 ONLY ONE 父母,请使用MR_save。 IF 父级恰好是根/默认上下文,MR_saveNestedContexts和MR_save做同样的事情,就是坚持存储。 -
如果您将您的 cmets 添加到答案中,我会给您绿色检查。
标签: objective-c ios database core-data magicalrecord