2016-07-24 84 views
1

我试图自动保存添加到我的以数据为核心应用程序,并有一行代码我加入textDidChange在CollectionViewItem后:核心数据命令崩溃的ViewController甚至删除

theNote?.updateChangeCount(NSDocumentChangeType.ChangeDone) 

这给了我一个很多错误,所以我评论了这一行。然后我去删除CocoaAppCD.storedata持久性存储文件以使其更清洁(我仍处于早期开发阶段,因此我的持久性存储中的所有内容都是随机测试材料)。

现在,我发现,核心数据命令崩溃我的ViewController。特别是这个函数:

func createNewNotebook(folderURL: NSURL) 
{ 

    let currentNotebook = Notebook(entity: sv.noteType, insertIntoManagedObjectContext:sv.context) 

    currentNotebook.folderURLstring = folderURL.absoluteString 

    let noteSet = currentNotebook.mutableSetValueForKey("contains") 
    print(String(noteSet)) 

    intakeFilesFromFolder(noteSet, currentFolderURL: folderURL) 

} 

(笔记本电脑和NoteEntity都在我的核心数据模型的两个实体类型)时,无论是currentNotebook.folder ......还是让noteSet ...命令运行,我得到这些错误的我的控制台:

Brouillon.NoteEntity folderURLstring]: unrecognized selector sent to instance 0x6080000a3a20 

2016-07-24 19:27:02.622 Brouillon[8006:361665] Failed to set (contentViewController) user defined inspected property on (NSWindow): -[Brouillon.NoteEntity folderURLstring]: unrecognized selector sent to instance 0x6080000a3a20 

和WindowController是空的,没有视图填充它(尽管之前我加入了现在,注释掉的行这些相同的语句工作过)。但是如果我绕过这个函数,所以核心数据语句不运行,视图就会加载。我会想,如果我在数据库中留下任何脏东西,删除CocoaAppCD.storedata文件应该已经修复了它(并且我在每次运行后都会删除该文件)。但是看起来Core Data中的某些东西对我来说依然黯然失色 - 有什么想法?

回答

0

我想通了。问题是我宣布了错误的实体类型:我的sv.noteType应该是sv.notebookType,因为它是一个Notebook而不是NoteEntity。 (当我创建实例化类为sv的类时,会引入该错误,作为保存我的其他重复代码的类。)