2012-04-23 6 views
2

もう1つの時間は何時間もありました。イムは、私はコアデータを設定するために、私のappDelegateでコードを作成している...別のViewController(コアデータ)から 'エンティティ'にアクセス

を私のデータベースの私のエンティティの「見る」に私のアプリを取得し、主要な問題が発生しました。私がブートする最初のビューは、問題なくこのデータにアクセスできます(読み書き可能)。場合は、他のviewControllerからデータベースにアクセスしようとすると、存在しないかのようになります。

私はすべて正しい@プロパティのが私のViewControllerのヘッダファイルに設定している:私もあることを、それぞれのViewControllerを持っている

@property (strong, nonatomic) NSFetchedResultsController *fetchedResultsController; 
@property (strong, nonatomic) NSManagedObjectContext *managedObjectContext; 

:私は、関連するヘッダをインポートした

NSFetchedResultsControllerDelegate 
  • エンティティにアクセスする.mファイル内のファイル。

このは私が取得エラーです:

'+entityForName: could not locate an NSManagedObjectModel for entity name MyEntityName' 

混乱の事は、私はappDelegateから起動ビューを変更した場合であるということである私が選択したいずれかのビューコントローラでエンティティを見て何の問題もありません。それは最初のものにそれを '注入'しているようですが、それはそれです。

イム私はNSManagedObjectにinit /アロケーションを設定し、私のエンティティに戻ってそれを参照する必要がありますが、私はどのようにこれを行うには考えている推測。

手がかりはありますか?

おかげ

+0

ようmanagedObjectContextを渡すのですか?私はあなたの財産を見ていますが、実際にそれを割り当てていますか? –

+0

こんにちはポール...私は今は何かにそれらを割り当てているとは思わない。これはどうすればいいですか? –

+0

も... managedObjectContextを渡すのは正しい方法ですか、それとも、それぞれのviewControllerに対して新しいものを作成するはずですか? –

答えて

1

だから私はあなたが何をする必要があるかと思いますが、あなたがviewControllersにmanagedObjectContextを渡しているどのようにこの

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender; 
{ 
    if ([[segue identifier] isEqualToString:@"theIdentifier"]) { 
     UINavigationController *navigationController = (id)[segue destinationViewController]; 

     MySecondViewController *topViewController = [navigationController topViewController]; 
     topViewController.managedObjectContext = self.managedObjectContext; 
    } 
} 
+0

(1秒でのUITableViewControllerです)次のViewControllerを取得し、その後sequeアクションをUIButtonを使用して! –

+0

修正しましたか? –

+0

nope :(今言っている:UINavigationController setManagedObjectContext:]:インスタンスに送られた認識不能なセレクタ –

関連する問題