0

我正在尝试为 iOS 制作我的第一个框架。

我有核心数据,xcdatamodel我有两个entites,我为两个模型自动生成了类,但是当我打印时,[[managedObjectModel entities] valueForKey:@"name"]我只看到第一个实体。

此外,当我尝试init fetchRequest withEntityName第二个实体时,我根本看不到它。

最奇怪的是,对于第一个实体来说,一切都很完美。此外,如果我在第一个实体中进行更新,我可以看到它,所以我相信它具有最新版本。

4

1 回答 1

0

根据我的经验,我已经使用了所有私有变量,并且它不会从外部访问,framework因此可能是这种情况。

或者您还必须指定framework核心数据bundle路径,以便entity您使用 dynamic 的当前项目可以访问它framework

像这样 :

lazy var managedObjectModel: NSManagedObjectModel = {
    // The managed object model for the application. This property is not optional. It is a fatal error for the application not to be able to find and load its model.
    let carKitBundle = NSBundle(identifier: "YOUR_FRAMEWORK_BUNDLE_PATH")

    let modelURL = carKitBundle!.URLForResource("YOUR_MODEL_NAME", withExtension: "momd")!
    return NSManagedObjectModel(contentsOfURL: modelURL)!
}()

可能会帮助您在当前项目中获得您的实体。

让我知道它是否能解决您的问题。

谢谢。

于 2016-11-11T13:05:40.997 回答