我正在观看/做iTunes U Stanford iPhone课程。 (免费提供!)。我正在试图找出核心数据的狗仔队计划。
以下是我如何将数据保存到coreData中,如何验证实际保存的信息?
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
FlickrFetcher *ff = [FlickrFetcher sharedInstance];
if (![ff databaseExists])
{
NSString *path = [[NSBundle mainBundle] pathForResource:@"FakeData" ofType:@"plist"];
NSArray *data = [NSArray arrayWithContentsOfFile: path];
NSManagedObjectContext *managedObjectContext = [ff managedObjectContext];
NSError *error = nil;
for (NSDictionary *row in data)
{
Person *person = (Person *)[NSEntityDescription insertNewObjectForEntityForName:@"Person" inManagedObjectContext:managedObjectContext];
Photo *photo = (Photo *)[NSEntityDescription insertNewObjectForEntityForName:@"Photo" inManagedObjectContext:managedObjectContext];
photo.name = [row objectForKey:@"name"];
photo.url = [row objectForKey:@"path"];
person.name = [row objectForKey:@"user"];
[person addPhotosObject:photo];
}
[managedObjectContext save:&error];
}
答案 0 :(得分:0)
在您的代码中,您可以在将error
消息发送到managedObjectContext之后检查nil
是否为save:
,或者,该表达式的返回值是否为{{1} }}。如果是这种情况,则意味着在上下文中保存更改时没有错误。
如果您只是想手动检查(例如,在之前已经运行过代码之后),您当然可以在某些浏览器中打开SQLite数据库并检查数据是否存在。 Firefox的 SQLite Manager 扩展程序是一个不错的工具。