Core Data では、モデルに Worker、Task、SubTask の 3 つのエンティティがあります。それぞれに、その下のエンティティとの対多の関係と対 1 の逆関係があります。Worker には多くの Task があり、各 Task には多くの SubTask があり、各 SubTask には 1 つの parentTask があり、各 Task には 1 つの Worker があります。SubTask には、newObject メソッドで現在の時刻に設定される startTime 属性と、SubTaskArrayController クラスの endSubTask メソッドをトリガーするボタンがあります。endSubTask は、startTime から現在までの時間を計算し、その値を SubTask 属性 timeWorked に設定します。ここまでは順調ですね。問題:
選択したタスクの totalTimeWorked 属性を取得してそれ自体を更新する最良の方法は何ですか?
私が何かをしようとすると
[currentSubTask setValue:newTotalTime forKey:@"parentTask.totalTimeWorked"];
私は得る:
[ setValue:forUndefinedKey:]: エンティティ SubTask は、キーparentTask.totalTimeWorked のキー値コーディングに準拠していません。
現在選択されている SubTask の parentTask の属性にアクセスするにはどうすればよいですか?