我使用Swift语言生成了托管对象,因此不再使用Objective-C了。你知道Swift一代还没有工作吗?
我在这一行收到一个错误:
let modelURL = NSBundle.mainBundle().URLForResource("TA", withExtension: "mom")
2014-10-12 18:17:13.940 TA[1767:555144] CoreData: warning: Unable to load class named 'Trip' for entity 'Trip'. Class not found, using default NSManagedObject instead.
fatal error: unexpectedly found nil while unwrapping an Optional value
我已将数据模型添加到项目中。那么呢?
答案 0 :(得分:7)
如果您在Xcode中将模型从一个项目移动到另一个项目,这不是一个好习惯。您将收到此崩溃,因为应用程序无法加载模型文件。
如果您需要在其他项目中使用完全相同的模型,则在Finder中打开原始模型文件,复制xml的相应部分,然后在Finder中打开目标模型文件并将该xml部分放入。
答案 1 :(得分:1)
我的申请遇到了同样的问题。我想在现有项目中使用核心数据,我没有选择核心数据进行初始化。
确保在两个位置更改模型的名称。
let url = self.applicationDocumentsDirectory.URLByAppendingPathComponent("TA.sqlite")
并且
let modelURL = NSBundle.mainBundle().URLForResource("TA", withExtension: "momd")!