iphone::使用NSPredicate无法识别的select器错误
嗨,当我尝试search核心数据在某些领域的实体,我得到以下错误:
[NSNull getCharacters:]: unrecognized selector sent to instance
这是我用来设置谓词的代码:
- (void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope { NSPredicate *resultPredicate =[NSPredicate predicateWithFormat:@"jobtitle=%@",@"Barber"]; searchResults = [getContacts filteredArrayUsingPredicate:resultPredicate]; }
但是,当我将predicate设置为我知道在其他字段上是正确的时,search就能正常工作:
- (void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope { NSPredicate *resultPredicate =[NSPredicate predicateWithFormat:@"title=%@",@"Dr"]; searchResults = [getContacts filteredArrayUsingPredicate:resultPredicate]; }
第一个版本search标题字段/属性,第二个search字段/属性。
检查模型中的属性job和jobtitle,我不能看出它们之间的任何区别。
谁能告诉我NSNull从哪里来,这意味着什么? 可能会有一些我在属性的属性,将解释这个失踪?
在此先感谢您的任何build议。
看起来getContacts
数组中的对象在第一个方法中没有jobtitle
属性。 您可以通过打印第一个对象NSLog(@"%@", getContacts.firstObject)
或打印整个数组NSLog(@"%@", getContacts)
- iCloud + CoreData – 如何避免预填充的数据重复?
- 什么时候用CoreData在iOS中明确保存?
- 使用Objective Cjoincoredata
- Swift:将CoreData作为数组获取
- 使用AFIncrementalStore和NSFetchedResultsController死锁
- 将SQL存储添加到NSPersistentStoreCoordinator时如何debugging/处理间歇性的“授权被拒绝”和“磁盘I / O”错误?
- 何时调用obtainPermanentIDsForObjects:?
- 获取结果时发生崩溃控制器在保存后台MOC后更新表
- 如何使用CoreData检索列中最后插入的值?