2

Xcode チュートリアルに取り組んでいますが、この問題を回避できません。チュートリアルはこちら

私が得ているエラーは次のとおりです。

+entityForName: エンティティ名「Contact」の NSManagedObjectModel が見つかりませんでした

この行で(宛先を連絡先に変更しました):

Contact *contact = (Contact *)[NSEntityDescription insertNewObjectForEntityForName:@"Contact" inManagedObjectContext:managedObjectContext];

Xcode 4.3.2とストーリーボードを使用してそれを行う方法がわからないため、ポイント番号11を完了していないため、問題が発生していると確信しています。誰か知っていますか?

4

2 に答える 2

1

Stephensの回答と同じように、コンテキストを次のviewcontrollerに渡すことができます。ただし、コンテキスト プロパティを新しいビュー コントローラーに追加することも忘れないでください。

@property(nonatomic,retain) NSManagedObjectContext *context;

ヘッダーファイルに

@synthesize context;

実装ファイルに。

次のようにして、コンテキストを取得できるかどうかを確認できます。

あなたのビューでdidload:

if (context == nil) 
{ 
    context = [(YOURAppDelegate *)[[UIApplication sharedApplication] delegate] managedObjectContext]; 
}

これが役に立たない場合。Coredata をいじっているときにシミュレーターをリセットしてみてください。バグが多いようです。

これが役立つことを願っています!

于 2012-06-19T14:07:11.440 に答える
0

エンティティが存在すると仮定すると、ポイント 10 から次のようなものが欠落している可能性が高くなります。

enterDataViewController.managedObjectContext = self.managedObjectContext;

それか、管理対象オブジェクト コンテキストがアプリ デリゲートで正しく設定されていません。

于 2012-06-19T13:39:53.217 に答える