コア データを使用するアプリがあります。そのモデルには 3 つのエンティティがあり、すべてが次のように 1 対多の関係で接続されています。
|E1|<-->>|E2|<-->>|E3|
私の UI は基本的に 3 方向に垂直に分割されたペインで、それぞれにテーブルビューがあります。それが機能する方法は、各ウィンドウを段階的に 1 レイヤー下に配置し、基本的にユーザーが E1 オブジェクトから E3 オブジェクトに「ドリルダウン」できるようにすることです。 OSX finder のオプションと同様に、関係によってリンクされます。
各テーブルは NSArrayController によって入力され、関連するエンティティからデータを取得し、前の「ドリルダウン」ウィンドウで選択されたものも取得します。ボタンを配列コントローラーの addObject メソッドに接続するだけで、これはすべて正常に機能しますが、作成される新しいオブジェクトは空白の行であり、手動で入力する必要があります。
ユーザーがファイルを選択できるようにする「ダイアログを開く」を開くために、追加ボタンを接続しました。次に、返された NSURL の配列を繰り返し処理し、コア データ モデルの E3 エンティティにファイル情報を追加します。保存を呼び出しますが、UI に何も表示されません。これは、追加しているオブジェクトがどの E2 に属しているかを知る方法がないため、表示されていないという事実に関係していると思います。
リレーションシップを持つコア データ モデルにオブジェクトを追加する方法はありますか? たとえば、E2 でどのオブジェクトが選択されているかを確認し、これに関連するオブジェクトを追加できます。私はこれを十分に明確にしたことを願っています。どんなアイデアや提案も大歓迎です!