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;
}