为什么MR_save不起作用,但MR_saveNestedContexts呢?

时间:2012-11-15 10:37:59

标签: objective-c ios database core-data magicalrecord

我正在使用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不起作用?

1 个答案:

答案 0 :(得分:0)

来自评论:

请参阅"Regarding MagicalRecord, what is the difference between the methods MR_saveNestedContexts and MR_save"。这两种方法之间有很好的描述。

从版本2.0.8开始,如果要确保将嵌套的上下文保留到商店,请使用MR_saveNestedContexts。如果您想要保存仅限一个父级,请使用MR_save IF 父级恰好是根/默认上下文,MR_saveNestedContextsMR_save执行相同的操作,即持续存储。