关闭

第三篇《iOS CoreData创建managedObjectContext失败》

标签: iOS项目实操ios
497人阅读 评论(0) 收藏 举报
分类:

   今天继续,还是坑,在用core data 的时候报错了,话不多说直接上代码!

-(void)saveWithDeviceToken:(NSString *)deviceToken
                  ClientId:(NSString *)clientId
                 ClientKey:(NSString *)clienKey{
    
    NSLog(@"bundle:%@",[NSBundle mainBundle]);
    
    NSEntityDescription *description = [NSEntityDescription entityForName:@"DeviceInfo" inManagedObjectContext:_manager.managedObjectContext];
    
    DeviceInfo *devInfo = [[DeviceInfo alloc] initWithEntity:description insertIntoManagedObjectContext:_manager.managedObjectContext];
    
    devInfo.deviceToken = deviceToken;
    devInfo.clientId = clientId;
    devInfo.clientKey = clienKey;
    devInfo.appId = appID;
    devInfo.appKey = appKEY;
    devInfo.deviceId = [CommonService readUUIDFromKeyChain];
    
    [_manager saveContext];
    
}
很简单的一个保存数据的方法,结果运行出错,错误提示:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name 'DeviceInfo''

查询得知好像是因为在创建context的过程中NSPersistentStoreCoordinator 这个对象为 nil导致。但是如何解决呢?找方法去了,找到回来更新哈~

更新说明:这个问题应该是未设置代理,所以传不了值导致,因此下期更新如何创建类的代理,也就是iOS中的代理模式。

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

OCiOS开发:手动创建CoreData数据模型

前言我们知道,在项目中当需要使用CoreData存储数据,创建工程的时候我们需要勾选Use Core Data选项,如下所示:在教学过程中,有学生这样问我,如果在项目中后期需要使用CoreData存储数据,但是在创建项目的时候并没有勾选Use Core Data选项,那又该如何操作呢?难道要重新创建...
  • Hierarch_Lee
  • Hierarch_Lee
  • 2016-04-27 22:52
  • 2829

iOS开发-CoreData的简单使用

什么是CoreData? CoreData是iOS5之后才出现的一个框架, 它提供了对象-关系映射(ORM)的功能, 即能够将OC对象转换成数据, 保存在SQLite数据库文件中, 也能够将保存在数据库中的数据还原成OC对象. 这个过程中, 我们不需要编写任何的sql语句, 这个有点类似于著名的Hi...
  • lc_1581835288
  • lc_1581835288
  • 2015-12-28 15:33
  • 904

iOS 数据库篇(二) CoreData创建与使用

在上一篇博客iOS 数据库篇(一) CoreData 认识与入门—原理讲解篇,我们了解CoreData是什么,CoreData 的原理,结构以及它的优缺点.这篇文章,我们将会学习 CoreData 的创建以及使用方法1.创建:创建有两种形式: (1)创建工程的时候勾选 UserCoreData选项 ...
  • wanna_dance
  • wanna_dance
  • 2017-06-21 18:05
  • 616

Core Data 教程:多托管对象上下文

原文:Multiple Managed Object Contexts with Core Data Tutoria 作者:Matthew Morey 译者:kmyhy 托管对象上下文是一个专门给托管对象使用的内存快照。大多数 app 只需要一个托管对象上下文。大部分 Core Data...
  • kmyhy
  • kmyhy
  • 2016-11-11 09:02
  • 1547

iOS Coredata安全之多线程

今天去一家公司面试,被问到coredata是怎么处理
  • xiaowenwen1010
  • xiaowenwen1010
  • 2014-09-25 00:25
  • 1661

CoreData 从入门到精通 (一) 数据模型 + CoreData 栈的创建

概述CoreData 是 Cocoa 平台上用来管理模型层数据和数据持久化的一个框架,说简单点,就是一个数据库存储框架。CoreData 里相关的概念比较多,而且初始化也非常繁琐,所以对初学者的学习还是有一些困难的。这篇文章将从头到尾详细地讲一遍 CoreData 的使用方法,从 CoreData ...
  • chaoyang805
  • chaoyang805
  • 2016-12-03 18:09
  • 5585

iOS基础面试题(三)

在上一篇中有20道iOS面试题,这是其后半部分。 iOS面试题系列: iOS面试题(一) iOS面试题(二) iOS面试题(四) 1.When to use NSMutableArray and when to use NSArray?  什么时候使用NSMutableA...
  • xunyn
  • xunyn
  • 2013-02-24 22:27
  • 44179

iOS CoreData详解(六)深入理解数据模型

原创Blog,转载请注明出处 blog.csdn.net/hello_hwc 之前的五篇文章 1. 堆栈与基本概念 2. 基本操作 3. 与Tableview协作-NSFetchedResultController 4. CoreData原理Faulting and Uniqui...
  • Hello_Hwc
  • Hello_Hwc
  • 2015-06-05 13:02
  • 2909

iOS学习之CoreData多表关联使用

坚持 成长 每日一篇,iOS学习之CoreData多表关联使用
  • u014410695
  • u014410695
  • 2015-08-29 11:19
  • 2222

iOS个人整理28-CoreData,数据表关系,数据库迁移

Core Data是一个功能强大的层,位于SQLite数据库之上,它避免了SQL的复杂性,能让我们以更自然的方式与数据库进行交互。Core Data将数据库行转换为OC对象(托管对象)来实现,这样无需任何SQL知识就能操作他们。
  • u010330109
  • u010330109
  • 2016-03-16 10:09
  • 811
    个人资料
    • 访问:5052次
    • 积分:157
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:0篇
    • 译文:0篇
    • 评论:3条
    文章分类
    最新评论