魔法记录仅保存内存

时间:2015-01-14 10:27:22

标签: ios core-data magicalrecord

我有这样的代码:

Person *person = [Person MR_findFirstByAttribute:@"FirstName"
                                   withValue:@"Forrest"];
NSLog("Person:%@",person);// age = 20
person.age = 25;
NSLog("Person:%@",[Person MR_findFirstByAttribute:@"FirstName"
                                   withValue:@"Forrest"]);// age = 25

我看到当我设置persion = 25时,MagicalRecord也将其保存到商店。有时我只想保存person而不保存到PersistentStore。我该怎么办?谢谢

1 个答案:

答案 0 :(得分:1)

设置person.age并不会将新值保存到持久存储中。仅当您保存NSManagedObjectContext对象存在的person时,才会保存该值(您可能使用其中一种Magical Record save方法)。在保存上下文之前,您可以放弃在person对象中所做的更改,因此它们不会被保存到持久存储中:

[person.managedObjectContext refreshObject:person mergeChanges:NO]