框架中的核心数据仅显示一个实体

时间:2016-11-11 08:16:53

标签: objective-c core-data objective-c-framework

我试图制作我的第一个iOS框架。

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

当我尝试第二个实体的azure storage share create --account-name myaccount --account-key mykey myshare 时,我根本看不到它。

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

1 个答案:

答案 0 :(得分:0)

根据我的经验,我使用了所有私有变量,但它不会访问framework一侧,因此可能就是这种情况。

或者您还需要指定framework核心数据bundle路径,以便entity将使用动态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)!
}()

可能会帮助您将您的实体纳入当前项目。

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

感谢。