Ios 读取时出现MagicalRecord问题?
因此,我希望根据用户选择显示一些信息,并且我希望将此选择保存在coreData中,以便将来表视图仅显示用户想要的信息 我正在使用MagicalRecord:Ios 读取时出现MagicalRecord问题?,ios,core-data,magicalrecord,Ios,Core Data,Magicalrecord,因此,我希望根据用户选择显示一些信息,并且我希望将此选择保存在coreData中,以便将来表视图仅显示用户想要的信息 我正在使用MagicalRecord: +(void)insertNewSeccion:(NSString *)seccion{ [Seccion MR_truncateAll]; [MagicalRecord saveUsingCurrentThreadContextWithBlock:^(NSManagedObjectContext *localContext) {
+(void)insertNewSeccion:(NSString *)seccion{
[Seccion MR_truncateAll];
[MagicalRecord saveUsingCurrentThreadContextWithBlock:^(NSManagedObjectContext *localContext) {
Seccion *myseccion = [Seccion MR_createEntity];
myseccion.seccion = seccion;
//[[NSManagedObjectContext MR_defaultContext] MR_saveNestedContexts];
} completion:^(BOOL success, NSError *error) {
}];
}
我这样称呼它写:
- (IBAction)PrepaAction:(id)sender {
[CoreDataBase insertNewSeccion:@"prep"];
[self reloadSeccion];
}
以及阅读:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if ([[CoreDataBase oneSeccion]isEqualToString:@"prep"]) {
return _TitlePrep.count;
}
return 0;
}
我得到了这个日志:
[NSManagedObjectContext(MagicalRecord) MR_contextWithStoreCoordinator:](0x4ac0ac) -> Created Context UNNAMED
2014-02-09 16:07:15.206 CMT[54120:70b] +[NSManagedObjectContext(MagicalRecord) MR_setRootSavingContext:](0x4ac0ac) Set Root Saving Context: <NSManagedObjectContext: 0xc871050>
2014-02-09 16:07:15.207 CMT[54120:70b] +[NSManagedObjectContext(MagicalRecord) MR_newMainQueueContext](0x4ac0ac) Created Main Queue Context: <NSManagedObjectContext: 0xc870f00>
2014-02-09 16:07:15.208 CMT[54120:70b] +[NSManagedObjectContext(MagicalRecord) MR_setDefaultContext:](0x4ac0ac) Set Default Context: <NSManagedObjectContext: 0xc870f00>
2014-02-09 16:07:19.722 CMT[54120:70b] -[NSManagedObjectContext(MagicalSaves) MR_saveWithOptions:completion:](0xc870f00) → Saving <NSManagedObjectContext (0xc870f00): *** DEFAULT ***> on *** MAIN THREAD ***
2014-02-09 16:07:19.723 CMT[54120:70b] -[NSManagedObjectContext(MagicalSaves) MR_saveWithOptions:completion:](0xc870f00) → Save Parents? 1
2014-02-09 16:07:19.723 CMT[54120:70b] -[NSManagedObjectContext(MagicalSaves) MR_saveWithOptions:completion:](0xc870f00) → Save Synchronously? 0
2014-02-09 16:07:19.768 CMT[54120:70b] -[Seccion isEqualToString:]: unrecognized selector sent to instance 0xb43e580
2014-02-09 16:07:19.782 CMT[54120:70b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Seccion isEqualToString:]: unrecognized selector sent to instance 0xb43e580'
那怎么了?问题是在阅读时,因为如果我对tableview进行注释,它会写入,但不会读取。谢谢你的帮助 -[Seccion isEqualToString:]:发送到实例0xb43e580的选择器无法识别
实例0xb43e580不是字符串,但它是一个类为Seccion的对象。您应该查找名为seccion的属性
更改您的行数部分:
您可能想考虑为属性使用不同的名称。具有与类相同的属性可能会令人困惑
[NSManagedObjectContext(MagicalRecord) MR_contextWithStoreCoordinator:](0x4ac0ac) -> Created Context UNNAMED
2014-02-09 16:07:15.206 CMT[54120:70b] +[NSManagedObjectContext(MagicalRecord) MR_setRootSavingContext:](0x4ac0ac) Set Root Saving Context: <NSManagedObjectContext: 0xc871050>
2014-02-09 16:07:15.207 CMT[54120:70b] +[NSManagedObjectContext(MagicalRecord) MR_newMainQueueContext](0x4ac0ac) Created Main Queue Context: <NSManagedObjectContext: 0xc870f00>
2014-02-09 16:07:15.208 CMT[54120:70b] +[NSManagedObjectContext(MagicalRecord) MR_setDefaultContext:](0x4ac0ac) Set Default Context: <NSManagedObjectContext: 0xc870f00>
2014-02-09 16:07:19.722 CMT[54120:70b] -[NSManagedObjectContext(MagicalSaves) MR_saveWithOptions:completion:](0xc870f00) → Saving <NSManagedObjectContext (0xc870f00): *** DEFAULT ***> on *** MAIN THREAD ***
2014-02-09 16:07:19.723 CMT[54120:70b] -[NSManagedObjectContext(MagicalSaves) MR_saveWithOptions:completion:](0xc870f00) → Save Parents? 1
2014-02-09 16:07:19.723 CMT[54120:70b] -[NSManagedObjectContext(MagicalSaves) MR_saveWithOptions:completion:](0xc870f00) → Save Synchronously? 0
2014-02-09 16:07:19.768 CMT[54120:70b] -[Seccion isEqualToString:]: unrecognized selector sent to instance 0xb43e580
2014-02-09 16:07:19.782 CMT[54120:70b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Seccion isEqualToString:]: unrecognized selector sent to instance 0xb43e580'
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if ([[[CoreDataBase oneSeccion] seccion] isEqualToString:@"prep"]) {
// ^^ ^^^^^^^^
return _TitlePrep.count;
}
return 0;
}