2

コア データ モデルを使用して作成した NSmanagedObject クラスのインスタンスを作成するにはどうすればよいですか。NSObject のサブクラスである別のクラスがあります。NSManageObject クラスのオブジェクトを作成したいと考えています。どうやってやるの。NSobject クラスのインスタンスを作成する通常の方法と同じですか?

ClassB.m //ClassB は NSObject クラス

ClassA *obj = [[ClassA alloc]init]; //ClassA is NSmanagedObject Class

またはそれを行う方法はありますか?

インスタンスの作成にこのコード( Apple Docs )を使用していません

NSManagedObject *newEmployee = [[NSManagedObject alloc]

            initWithEntity:employeeEntity

            insertIntoManagedObjectContext:context];

知りたいのですが、restkit を使用して上記のコードに似たオブジェクトを作成する方法はありますか

注: オブジェクト インスタンスとマッピングの作成に Restkit を使用しています。

ありがとう

4

2 に答える 2

5

Restkit を使用すると、作成するクラスで静的メソッド オブジェクトを使用できます。あなたの例では

[ClassA object]

インスタンス化されたオブジェクトを返します。

必ず正しいヘッダーをインポートしてください。

#import <RestKit/CoreData.h>

それ以外の

#import <CoreData/CoreData.h>

于 2012-08-30T13:35:25.187 に答える
0

いいえ、alloc/init を介して NSManagedObject をインスタンス化する必要はありません。を使用する必要がありNSEntityDescriptionますinsertNewObjectForEntityForName:inManagedObjectContext:。何かのようなもの:

ClassA *obj = [NSEntityDescription
    insertNewObjectForEntityForName:@"ClassA"
    inManagedObjectContext:context]; // ClassA is NSManagedObject Class

を持つためには、、 、 などNSManagedObjectContextも必要です。ええ、複雑です。 この本は、Core Data について理解するのに本当に役立ちました。心からお勧めします。NSPersistentStoreCoordinatorNSManagedObjectModel

管理対象オブジェクトの作成と削除については、Core Data プログラミング ガイドのセクションを参照してください。実際のところ、 Core Data Programming Guideをすべて読むことをお勧めします。Core Data は驚くほどパワフルですが、複雑です。あなたは本当に自分が何をしているのか知りたいのです。

更新: RestKit を使用しているという事実は、上記の内容を変更する可能性があります。RestKit には Core Data を行うための独自の API があるのか​​もしれませんが、よくわかりません。多分ドキュメントをチェックしてください。

于 2012-08-26T05:23:01.130 に答える