Xcode 4:替换NSManagedObject子类

时间:2011-10-25 02:20:29

标签: iphone xcode nsmanagedobject xcdatamodel

我有一个来自Xcode 3的项目,我通过转换过程使其与Xcode 4兼容。在这个项目中,我的所有NSManagedObject子类都在一个名为“.xcdatamodeld”的组中。

如果我使用new属性更新数据模型中的实体,我希望该属性的方法在我的实体的NSManagedObject子类中可用。

在Xcode 3中,我会选择我想要重新生成的实体,并选择File - >新。这将替换.xcdatamodeld组中的相应类。

在Xcode 4中,它是相同的过程,除了生成的NSManagedObject子类将去除除.xcdatamodeld组之外的任何地方。此外,我无法从该组中删除任何文件。没有任何错误消息或通知告诉原因。当我按下删除键时,它什么也没做。

我使用的解决方法是转到Finder(或终端),删除旧类,然后将新生成的类移动到.xcdatamodeld目录。是否有一种我缺少的新范例?解决方法似乎不必要地繁琐。

1 个答案:

答案 0 :(得分:2)

从Xcode 4开始,“xcdatamodeld group with NSManagedObject子类文件”范例似乎已被删除。它在Xcode 4中的工作方式是数据模型作为文件节点存在,NSManagedObject子类存在完全住在项目的另一个小组中。我为完成Xcode 3项目的更新所做的是:

  1. 从项目中删除对数据模型的引用(引用)。

  2. 转到终端并移动.xcdatamodeld下的所有NSManagedObject子类文件 目录到我的源目录下的新目录。 Finder似乎阻止访问目录,但终端没有。

  3. 将数据模型添加回“将现有文件添加到项目”菜单项下的项目。

  4. 将NSManagedObject子类文件添加回项目。