私はXcode GUIで作成した既存のNSManagedObjectModel
を持っています。 Xcode 3.2のGUIがサポートしていないソート済みのプロパティを作成したい。オブジェクトグラフマネージャーを使用してNSManagedObjectModel
を変更できないことがわかっているので、私はNSPersistentStoreCoordinator
を作成する前にこれをすべて行います。私はthusly NSFetchedPropertyDescription
を作成しました:プログラムでNSFetchedPropertyDescriptionを作成するにはどうすればよいですか?
NSManagedObjectModel *managedObjectModel = ... // fetch from my mainBundle
NSEntityDescription *fetchedPropertyEntityDescription = [entitiesByName objectForKey:@"MyEntity"];
NSFetchRequest *fetchRequest = [[[NSFetchRequest alloc] init] autorelease];
[fetchRequest setEntity:fetchedPropertyEntityDescription];
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"myPredicateProperty == $FETCH_SOURCE"]];
[fetchRequest setSortDescriptors:[NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"mySortProperty" ascending:YES]]];
NSFetchedPropertyDescription *fetchedPropertyDescription = [[[NSFetchedPropertyDescription alloc] init] autorelease];
[fetchedPropertyDescription setFetchRequest:fetchRequest];
[fetchedPropertyDescription setName:@"myFetchedProperty"];
NSEntityDescription *entityDescription = [entitiesByName objectForKey:@"MyFetchSourceEntity"];
[entityDescription setProperties:[[entityDescription properties] arrayByAddingObject:fetchedPropertyDescription]];
私は
[fetchedPropertyDescription setFetchRequest:fetchRequest];
を呼び出すと、私は次の例外を取得:それは使用された後あなたが管理オブジェクトモデルを変更することはできません
NSInvalidArgumentException: Can't use fetch request with fetched property description (entity model mismatch).
はい、私はまだNSManagedObjectModelとNSPersistentStoreCoordinatorを作成していない:
適切な手順は以下の通りです。私は私の質問を更新します。 –