我有一个应用程序,它有一个名为 Holidays 的实体。我需要为我的应用程序预先填充几年的假期。
我在想我可以检查 Holidays 实体并通过在 AppDelegate didFinishLaunchingWithOptions 方法中放置代码来在运行时加载它......我可以检查它是否已经有记录,然后如果没有,添加它们。
有一个更好的方法吗?
另外,我尝试在实体上执行一个简单的 fetchrequest 来计算记录(作为查看它是否已经加载的一种方式),但不断收到我的数组为空的错误。如何在不出错的情况下检查实体是否为空?
这当然会死,但这是我尝试过的:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// set up the default data
//holiday dates
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Holidays" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
NSError *error = nil;
NSArray *fetchedObjects = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];
if (fetchedObjects == nil) {
NSLog(@"The entity is empty");
}
else {
NSLog(@"The entity is loaded");
}
return YES;
}