获取核心数据,NSException错误
我使用核心数据处理应用程序。实现的最大部分工作得很好,但在最后一刻我得到一个NSException错误。我可以获取核心数据并将它们放在一个字符串中,但我不能将它放在textView,label或其他任何地方。获取核心数据,NSException错误
这是获取的代码。 NSManagedObjectContext *managedObjectContext = [self managedObjectContext]; NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"Template"]; self.template = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy]; NSLog(@"%@ viewDidLoad", [template valueForKey:@"name"]); self.nameStringString = [template valueForKey:@"name"]; NSLog(@"%@ viewDidLoad String", self.nameStringString); self.testLabel.text = self.nameStringString;
我在代码中测试了一段时间,数据仍然完好或缺失。这里的代码工作正常,直到最后一句。我该怎么办?
预先感谢您!
编辑:这是我得到的错误。错误后,应用程序将被终止。 2015年9月3日21:20:54.511 **** [1640:671115] - [__ NSArray0 rangeOfCharacterFromSet:]:无法识别的选择发送到实例0x1255022a0
的executeFetchRequest
返回一个NSArray,即使仅存在一个对象获取。您需要获得valueForKey
之前到阵列的各个成员提取:
NSManagedObjectContext *managedObjectContext = [self managedObjectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"Template"];
NSArray *templateArray = [managedObjectContext executeFetchRequest:fetchRequest error:nil];
NSManagedObject *firstTemplate = [templateArray firstObject];
self.nameStringString = [firstTemplate valueForKey:@"name"];
NSLog(@"%@ viewDidLoad String", self.nameStringString);
self.testLabel.text = self.nameStringString;
我应该如何处理“firstObject”?在那里得到一个错误。 – user3638160
让我修改我的答案... – pbasdf
@ user3638160我修改了代码以使用本地NSArray来保存提取结果。我认为这应该工作。出于兴趣,什么类是'self.template'? – pbasdf
什么这些的NSLog语句说明了什么? – pbasdf
ggfgg, ggfgg, ggfgg, ggfgg, ggfgg, ggfgg, ggfgg – user3638160
当我编码我做的不是重写旧了一些新的对象的核心数据的方法。最后一个是ggfgg,就像在测试中一样。 – user3638160