使用 MagicalRecord
MagicalRecord using
我是 CoreData 和 MR 的新手。正在尝试保存一些实体并在之后读取它们。
节省:
Events *newEvent = [Events MR_createEntity];
newEvent.title = @"qwe";
newEvent.date = [NSDate date];
[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreWithCompletion:^(BOOL contextDidSave, NSError * _Nullable error) {}];
阅读:
NSMutableArray *events = [NSMutableArray arrayWithArray:[Events MR_findAll]];
NSLog(@"%@",events);
结果我得到 "data: < fault >"
如果我添加私有上下文,例如:
NSManagedObjectContext *context = [NSManagedObjectContext MR_newPrivateQueueContext];
NSMutableArray *events = [NSMutableArray arrayWithArray:[Events MR_findAllInContext:context]];
我的应用程序因错误原因崩溃:'+entityForName: nil 不是用于搜索实体名称的合法 NSPersistentStoreCoordinator 'Events''
谁能告诉我为我的任务工作的代码
您不需要为此添加任何私有上下文(如果您出于其他原因不需要它,这是显而易见的)。 "data: <fault>"
是 iOS 的一部分。如果不直接访问对象,Core Data 不会提取对象的信息,出于性能原因,这是一个不错的选择。所以,如果你想在控制台中打印你的数组,你必须循环它并打印从数组中提取它的每个元素。
for (Event *event in [Events MR_findAll]) {
NSLog(@"Event name : %@", event.name)
}
这应该很好用。
PS:一点建议,为您的实体使用单数名称,因为它们代表单个对象,单个 class。不要将它们视为桌子,因为它们不是。
我是 CoreData 和 MR 的新手。正在尝试保存一些实体并在之后读取它们。
节省:
Events *newEvent = [Events MR_createEntity];
newEvent.title = @"qwe";
newEvent.date = [NSDate date];
[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreWithCompletion:^(BOOL contextDidSave, NSError * _Nullable error) {}];
阅读:
NSMutableArray *events = [NSMutableArray arrayWithArray:[Events MR_findAll]];
NSLog(@"%@",events);
结果我得到 "data: < fault >"
如果我添加私有上下文,例如:
NSManagedObjectContext *context = [NSManagedObjectContext MR_newPrivateQueueContext];
NSMutableArray *events = [NSMutableArray arrayWithArray:[Events MR_findAllInContext:context]];
我的应用程序因错误原因崩溃:'+entityForName: nil 不是用于搜索实体名称的合法 NSPersistentStoreCoordinator 'Events''
谁能告诉我为我的任务工作的代码
您不需要为此添加任何私有上下文(如果您出于其他原因不需要它,这是显而易见的)。 "data: <fault>"
是 iOS 的一部分。如果不直接访问对象,Core Data 不会提取对象的信息,出于性能原因,这是一个不错的选择。所以,如果你想在控制台中打印你的数组,你必须循环它并打印从数组中提取它的每个元素。
for (Event *event in [Events MR_findAll]) {
NSLog(@"Event name : %@", event.name)
}
这应该很好用。
PS:一点建议,为您的实体使用单数名称,因为它们代表单个对象,单个 class。不要将它们视为桌子,因为它们不是。