首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >核心数据,mom与mom扩展

核心数据,mom与mom扩展
EN

Stack Overflow用户
提问于 2018-08-08 10:10:03
回答 1查看 829关注 0票数 1

mom与mom扩展

在我的项目中,我使用momd扩展从包中获取.xcdatamodel,一个月前它运行良好,但是今天每当我尝试访问Core data对象时,它就开始崩溃,在下面的代码中表示modelURL为零。

代码语言:javascript
复制
private lazy var managedObjectModel: NSManagedObjectModel = {
        guard let modelURL = Bundle.main.url(forResource: self.modelName, withExtension: "momd”) else {
            fatalError("Unable to Find Data Model URL")
        }

        guard let managedObjectModel = NSManagedObjectModel(contentsOf: modelURL) else {
            fatalError("Unable to Load Data Model")
        }

        return managedObjectModel
}()

因此,在查看问题之后,在这个问题中,他使用mom作为扩展,所以我将上面的代码更改为mom,现在它可以正常工作了,但这是一个6年前的问题。所以我无法弄清楚,这在我的项目中有多突然就成了一个问题。就连苹果公司的官员文档也把momd作为扩展。

以及如何确保哪一种方法总是有效的,并且只在这个问题中使用@yuji指出,

要获得the .mom(D)文件并不完全是推荐的方法。使用mergedModelFromBundles代替

那么,如何在单个.xcdatamodel中准确地工作呢?

EN

回答 1

Stack Overflow用户

发布于 2021-10-01 23:44:09

创建新模型时,默认情况下会得到两个文件: MyDataModel.momd和嵌套MyDataModel.mom。

添加版本时,将创建另一个mom文件并将其添加到momd中。

当您通过指向momd文件创建NSManagedObjectModel实例时,将使用当前版本(如检查器文件窗格中所选)。如果需要访问模型的早期版本,例如迁移模型时,请指向mom文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51744037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档