为什么我添加另一个版本的 DataModel 后,我的 NSManagedDataModel 没有实体?
MacBook Pro Late 2008, OS X 10.8.5, Xcode 5.0.2, Project 有两个app,一个OS X,一个iOS,都共享一个datamodel 最近新增一个dataModel 版本DataModel 涉及NSManagedObject 的四个子类。四个类中的每一个都收到了两个相同的更改,即添加了两个属性:修改了 NSDate uid NSString 我没有选择选项:在生成四个类的文件时使用原始数据类型的标量属性。
在 OS X 应用程序中执行以下四行时,
NSString *path = [[NSBundle mainBundle] pathForResource:@"SqliteFromXml" ofType:@"momd"];
NSURL *momdURL = [NSURL fileURLWithPath:path];
managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:momdURL];
NSLog(@"path=%@\nDataModel=%@\nEntities in DM=%@",path,managedObjectModel,[managedObjectModel entities]);
这是输出:
path=/Users/appleuser/SqliteFromXml/Debug/SqliteFromXml.app/Contents/Resources/SqliteFromXml.momd
DataModel=(<NSManagedObjectModel: 0x1001d1b80>) isEditable 0, entities {
}, fetch request templates {
}
Entities in DM=( )
每次运行都会创建 momd 包,但它有 0 个实体。
.app 包内容看起来是这样的:
https://www.dropbox.com/s/68iy8gjqbv0m0tq/Screenshot%202014-02-16%2018.03.02.png
非常感谢,马克