Use of undeclared type 'Transcription'
我正在关注Swift 3中的核心数据这个简单的教程(https://learnappdevelopment.com/uncategorized/how-to-use-core-data-in-ios-10-swift-3/)
我在线上得到了上述错误:let fetchRequest: NSFetchRequest<Transcription> = Transcription.fetchRequest()
我仔细检查并在我的.xcdatamodeld文件中正确拼写了Entity“Transcription”
这个教程是为Swift 3设计的,但是自我发布之后又发生了另一个修改,所以我猜测在过去的两个月中Swift的其他一些变化导致了这个错误。
我是Core Data的新手,所以我不知道如何调试它。我非常感谢解决方案!
别忘了import CoreData
到你的子类
突出显示数据模型,转到编辑器 - >创建NSManagedObject子类...
这解决了错误
我遇到了同样的错误,我习惯了Xcode 8.2.1。我清理了项目,关闭了Xcode并重新打开它,构建后错误消除了。
这可能是因为Xcode无法确定.xcdatamodel
的路径,清理项目时可以看到相关的错误。更改.xcdatamodel
的名称时,我的项目之一发生此错误。
决议涉及以下内容:
.xcdatamodel
- >在Finder中显示
拖动.xcdatamodel
导入项目,应创建一个新条目
删除以前的.xcdatamodel
条目。使用Xcode版本8.2 beta(8C30a),当我添加或修改实体时,我得到相同的错误。在数据模型检查器中,将Codegen选项更改回Manual / None,就好像我将自己生成动态类一样。保存,然后更改回类别/扩展,它似乎工作。 (我也尝试使用Option-Clean清理项目,重新启动XCode,但能够轻松地重现它。)希望升级8.3 beta修复此错误。
对我来说,我必须从我的.xcdatamodeld文件中删除我的实体,该实体在我的案例“转录”中给出了错误,然后再手动重新添加它。