Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios CoreData:错误:调用NSManagedObject类上的指定初始值设定项失败创建失败_Ios_Swift_Core Data_Nsmanagedobject - Fatal编程技术网

Ios CoreData:错误:调用NSManagedObject类上的指定初始值设定项失败创建失败

Ios CoreData:错误:调用NSManagedObject类上的指定初始值设定项失败创建失败,ios,swift,core-data,nsmanagedobject,Ios,Swift,Core Data,Nsmanagedobject,我研究了其他问题并尝试了它们的解决方案,但错误依然存在 另外,这是我的第一个iOS项目,所以请解释一下,就像我是五岁一样 在展开可选值时意外发现nil 可能您的backup或backup.integer或任何其他赋值为零。请调试以进行检查。解决方案原来是处理ManagedObjectContext的。我试图在DAO文件中生成它,但需要从ViewController传递它 刀 和视图控制器 coreDataDao.createEntry("a title",context: self.manage

我研究了其他问题并尝试了它们的解决方案,但错误依然存在

另外,这是我的第一个iOS项目,所以请解释一下,就像我是五岁一样

在展开可选值时意外发现nil


可能您的backup或backup.integer或任何其他赋值为零。请调试以进行检查。

解决方案原来是处理ManagedObjectContext的。我试图在DAO文件中生成它,但需要从ViewController传递它

和视图控制器

coreDataDao.createEntry("a title",context: self.managedObjectContext!)

你可以看到我是如何通过它的,它是硬编码的。也许是日期对象。正在调试。很有趣。。。所以我注释掉了DOA文件中的所有内容,并用println替换它来调试数据。数据与预期完全一致。然而,错误依然存在。。。。致命错误消失了,但核心数据错误仍然存在。我没有意识到读数中有两个错误…什么是日记道?为什么要从NSManagedObject继承coreDataDao?它正在实现一个协议。我们的前端专家设置了它,让我做数据库基础工作,将类coreDataDao:NSManagedObject、DiaryDAO更改为类coreDataDao:DiaryDAO,然后告诉我。
 class coreDataDao : NSManagedObject, DiaryDAO{
 func createEntry(title:String,text:String,date:NSDate,backup:NSNumber,extra:String){
  let newItem = NSEntityDescription.insertNewObjectForEntityForName("DiaryEntry", inManagedObjectContext: self.managedObjectContext!) as! DiaryEntry
    newItem.title=title
    newItem.text=text
    newItem.date=date
    newItem.extra=extra
    newItem.backup=backup.integerValue
}
}
  let managedObjectContext = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
  func jTest(){
    var dao = coreDataDao()
    dao.createEntry("a title",text:"some text", date: NSDate(), backup: 2, extra: "extras")    
}
MyApp[9786:438760] CoreData: error: Failed to call designated initializer on NSManagedObject class 'MyAppName.coreDataDao' 
fatal error: unexpectedly found nil while unwrapping an Optional value
 class func createEntry(title:String,context:NSManagedObjectContext)->DiaryEntry{

    if let newItem = NSEntityDescription.insertNewObjectForEntityForName("DiaryEntry", inManagedObjectContext: context) as? DiaryEntry{
coreDataDao.createEntry("a title",context: self.managedObjectContext!)