キー値コーディングを使用すると、実行時に NSManagedObject に未定義の属性を設定でき、例外はスローされないという印象を受けましたが、データ モデルにないモデルにアタッチされたオブジェクトを保持する方法になるでしょう。
たとえば、「バー」属性を持たない Foo オブジェクトがあります。実行時に、次のように設定できると思いました。
Foo *foo = [NSEntityDescription insertNewObjectForEntityForName:@"Foo" inManagedObjectContext:ManagedObjectContext];
[foo setValue:@"foobar" forUndefinedKey:@"bar"];
その後、ManagedObjectContext が後でクエリを実行するまでこの値を保持することを期待しますが、Managed Object Context を保存してもバーの値は保存されません。
このコードを実行すると、有名なエラーがポップアップし続けます。
the entity Foo is not key value coding-compliant for the key "bar"
..だから私の質問は: 私は何を得ていないか、間違っているのですか?