保存在魔法记录中?
Saving in Magical Record?
我写了一段代码来解析一些 JSON 并通过神奇的记录将数据保存到数据库:
NSMutableArray *resultsArray = [NSMutableArray array];
NSArray *timesArray = JSON[@"results"];
for (NSDictionary *record in timesArray) {
Time *newTime = [Time MR_createEntity];
newTime.distance = record[@"distance"];
newTime.time = record[@"time"];
newTime.date = [[MMXFormatter instance] dateFromString:record[@"date"]];
newTime.createdAt = [[MMXFormatter instance] dateFromString:record[@"createdAt"]];
newTime.updatedAt = [[MMXFormatter instance] dateFromString:record[@"updatedAt"]];
[resultsArray addObject:newTime];
}
[MagicalRecord saveWithBlock:nil];
以上代码没有保存到持久存储中。好久没用 Magical Record 了,感觉存档跟以前不一样了。我现在如何保存我的数据?
如果要使用saveWithBlock
,代码应该是
[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext){
Time *newTime = [Time MR_createEntityInContext:localContext];
newTime.distance = ...
...
}
另一种方法是将 saveWithBlock
替换为 MR_saveToPersistentStoreAndWait
NSMutableArray *resultsArray = [NSMutableArray array];
NSArray *timesArray = JSON[@"results"];
for (NSDictionary *record in timesArray) {
Time *newTime = [Time MR_createEntity];
newTime.distance = record[@"distance"];
newTime.time = record[@"time"];
newTime.date = [[MMXFormatter instance] dateFromString:record[@"date"]];
newTime.createdAt = [[MMXFormatter instance] dateFromString:record[@"createdAt"]];
newTime.updatedAt = [[MMXFormatter instance] dateFromString:record[@"updatedAt"]];
[resultsArray addObject:newTime];
}
[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];
为了更好地了解 CoreData 和 MegicalRecord,我建议您阅读本教程
http://code.tutsplus.com/tutorials/easy-core-data-fetching-with-magical-record--mobile-13680
我写了一段代码来解析一些 JSON 并通过神奇的记录将数据保存到数据库:
NSMutableArray *resultsArray = [NSMutableArray array];
NSArray *timesArray = JSON[@"results"];
for (NSDictionary *record in timesArray) {
Time *newTime = [Time MR_createEntity];
newTime.distance = record[@"distance"];
newTime.time = record[@"time"];
newTime.date = [[MMXFormatter instance] dateFromString:record[@"date"]];
newTime.createdAt = [[MMXFormatter instance] dateFromString:record[@"createdAt"]];
newTime.updatedAt = [[MMXFormatter instance] dateFromString:record[@"updatedAt"]];
[resultsArray addObject:newTime];
}
[MagicalRecord saveWithBlock:nil];
以上代码没有保存到持久存储中。好久没用 Magical Record 了,感觉存档跟以前不一样了。我现在如何保存我的数据?
如果要使用saveWithBlock
,代码应该是
[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext){
Time *newTime = [Time MR_createEntityInContext:localContext];
newTime.distance = ...
...
}
另一种方法是将 saveWithBlock
替换为 MR_saveToPersistentStoreAndWait
NSMutableArray *resultsArray = [NSMutableArray array];
NSArray *timesArray = JSON[@"results"];
for (NSDictionary *record in timesArray) {
Time *newTime = [Time MR_createEntity];
newTime.distance = record[@"distance"];
newTime.time = record[@"time"];
newTime.date = [[MMXFormatter instance] dateFromString:record[@"date"]];
newTime.createdAt = [[MMXFormatter instance] dateFromString:record[@"createdAt"]];
newTime.updatedAt = [[MMXFormatter instance] dateFromString:record[@"updatedAt"]];
[resultsArray addObject:newTime];
}
[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];
为了更好地了解 CoreData 和 MegicalRecord,我建议您阅读本教程
http://code.tutsplus.com/tutorials/easy-core-data-fetching-with-magical-record--mobile-13680