- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
嗨,我是 IOS 的初学者,并且创建了我的第一个核心数据应用程序。我已经创建了我的模式并将其包含在项目中。它确实包含实体“客户端”。当我使用以下测试代码创建数据库并尝试添加实体时,出现以下错误
..'+entityForName:无法找到实体名称“ItemMake”的 NSManagedObjectModel
调用 [NSEntityDescription insertNewObjectForEntityForName:@"Client"inManagedObjectContext:contxt] 时;
我已经检查了我能想到的一切,代码如下所示。这是一些进一步的信息...
a) mdl 和 contxt 不为零。
b) 在模拟器中创建数据库文件 (16kb)
c) 从另一个工具访问数据库仅显示两个表,这两个表似乎是 SQLlite 系统表
d) 该软件包确实包含“EasyOrder.momd”目录和“EasyOrder.mom”文件。该应用程序名为“EasyOrder”。
e) 该项目包含一个“EasyOrder.xcdatamodeld”文件,其中定义了一个客户端实体(以及其他实体)。
f)我在数据库中尝试了其他实体,得到了相同的结果
g) 我的应用程序是一个标准应用程序,我也添加了核心数据支持。我没有在应用程序委托(delegate)中使用默认代码,但我的示例也没有使用。
代码如下
NSManagedObjectContext *contxt;
NSManagedObjectModel *mdl;
NSPersistentStoreCoordinator *ps;
mdl = [NSManagedObjectModel mergedModelFromBundles:nil];
ps = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:mdl];
NSArray *documentDirectories = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [documentDirectories objectAtIndex:0];
NSString *dbLoc = [docDir stringByAppendingPathComponent:@"test.sqllite"];
NSURL *databaseUrl = [NSURL fileURLWithPath:dbLoc];
NSError *err;
if ([ps addPersistentStoreWithType:NSSQLiteStoreType
configuration:nil
URL:databaseUrl
options:nil
error:&err] == false) {
NSLog(@"%@", err);
}
[contxt setUndoManager:nil];
//Add record
//这里崩溃了!
Client *c = [NSEntityDescription insertNewObjectForEntityForName:@"Client" inManagedObjectContext:contxt];
[c setEntityRef:1234];
...
蒂亚罗布
最佳答案
我刚刚解决了这个问题。我相信存在某种版本控制问题,其中使用的数据模型很旧且不包含表。
我使用虚拟模型(只有一张表)创建了一个测试应用程序,并且运行良好。然后我删除了该模型并使用了实际应用程序中的模型。它继续正常工作,但没有根据数据模型创建表。因此,我从模拟器中删除了运行时,然后它正确创建了所有表。
我在实际应用程序中遵循了相同的过程,从模拟器中删除,删除模型,添加具有不同名称的模型并重新构建。应用程序现在可以运行了!
关于ios - 访问/创建 IOS 的核心数据 slqlite 数据库失败 - 找不到实体(创建空数据库),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11423753/
嗨,我是 IOS 的初学者,并且创建了我的第一个核心数据应用程序。我已经创建了我的模式并将其包含在项目中。它确实包含实体“客户端”。当我使用以下测试代码创建数据库并尝试添加实体时,出现以下错误 ..'
我是一名优秀的程序员,十分优秀!