【问题标题】:XCode - how to rename Core Data xcdatamodeld model internals?XCode - 如何重命名核心数据 xcdatamodeld 模型内部?
【发布时间】:2021-02-09 13:27:27
【问题描述】:

我将我的数据模型从一个项目复制到另一个项目。我可以重命名 .xcdatamodeld 文件,并使用新名称加载它。但是,当我编辑数据模型时,面包屑仍然显示它内部是一个实际模型,仍然使用旧名称(带有绿色复选框)。我正在为模型中的实体使用自动生成的类(codegen > 类定义)

我尝试重命名 finder 中的文件,但这会阻止模型加载。

有没有一种方法可以重命名 .xcdatamodeld 的内部结构而无需将所有内容迁移到新模型?

但是,当我打开

【问题讨论】:

    标签: ios xcode core-data


    【解决方案1】:

    您是尝试重命名实际的 .xcdatamodel 文件还是仅重命名 .xcdatamodeld 文件?

    如果您右键单击您的 .xcdatamodeld 文件,则会出现 option: 'Show Package Contents'。它将向您显示其中所有 .xcdatamodel 文件的列表。

    每个 .xcdatamodel 代表一个特定版本的数据库。尝试重命名这些文件,不要忘记那里的 .xccurrentversion 文件 - 它包含带有您当前模型版本名称的 xml(它是隐藏的,因此请确保您可以在 Finder 中查看隐藏文件)。之后,您可以将重命名的 xcdatamodeld 文件添加到您的项目中。

    编辑:.xccurrentversion 文件名不应该改变,只有内部当前版本模型的名称(它基本上是纯 xml 文件):

    【讨论】:

    • 我尝试重命名文件和 .xccurrentversion,但 XCode 拒绝打开重命名的模型(点击它,没有任何反应)
    • 奇怪,你是在重命名后还是之前将xcdatamodeld文件添加到项目中?并且只是为了避免对 .xccurrentversion 文件的误解 - 文件本身不应该被重命名,它只是其中的当前模型版本名称,我将编辑我的答案。
    • 是的,我更改了该文件中的引用。无法再打开文件。没什么大不了的
    • 好的,你能直接从Finder打开模型吗?通过双击里面的xcdatamodeld文件和xcdatamodel文件呢?如果这些文件在 Xcode 中打开而没有问题,我建议您在项目中删除并再次添加 xcdatamodeld,因为它可能只是松散了对它的引用。
    • 我遇到了和 Alex 一样的问题,在 Xcode 中再次删除和添加文件解决了这个问题。谢谢天蝎座。
    猜你喜欢
    • 2020-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-26
    • 1970-01-01
    • 2017-12-25
    • 1970-01-01
    • 2012-11-23
    相关资源
    最近更新 更多