0

iOS デバイスで Core Data Model からオブジェクトをフェッチする際に問題が発生しています。シミュレーターを使用すると、オブジェクトは正常にフェッチされますが、オブジェクトを取得NSMutableArrayするために使用しているデバイスは空です。オブジェクトをフェッチするとAppDelegate.mオブジェクトが正しく返されますが、View Controller でそれらをフェッチするとエラーが発生します。私はインターネットをたくさん検索しましたが、問題の解決策を見つけることができませんでした。アプリケーションのロード時にオブジェクトをフェッチします。このエラーが発生すると、アプリケーションが機能しなくなります。前もって感謝します。

PS: ジェイルブレイクされた iPhone は、テスト時に正しく機能しませんか? また、Core Data を使用する別のアプリケーションを作成し、それが適切に機能することにも注意してください。このアプリケーションの何が問題なのかはわかりません。

- (void)loadCategoriesFromDatabase{

categoriesInDatabase = [[NSMutableArray alloc] init];

NSFetchRequest *fetchRequest = [NSFetchRequest alloc];
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"Category" inManagedObjectContext:managedObjectContext];

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"display_order" ascending:YES];
NSArray *sortArray = [NSArray arrayWithObject:sortDescriptor];

[fetchRequest setSortDescriptors:sortArray];
[fetchRequest setEntity:entityDescription];

self.categoriesInDatabase = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy];
4

1 に答える 1

1

このようにNSErrorポインタを渡してみてくださいexecuteFetchRequest

NSError* error = nil;
NSArray* categories = [managedObjectContext executeFetchRequest:fetchRequest
                                            error:&error];
if(error) {
    NSLog(@"%@", [error debugDescription]);
}
self.categoriesInDatabase = [categories mutableCopy];

エラーのあるログを投稿します。

于 2013-03-03T00:14:38.713 に答える