コアデータを使用して、「リレーショナル」形式で送信されたサーバーのデータを格納しています。リレーショナルデータ(iOS)からコアデータリレーションシップを素早く作成する
例えば、私は、サーバーから取得したデータは、このようなもの(実際の形式は多少異なるが、十分に類似している)
Users: [{PK: 1, Name: 'A B'}, {PK: 2, Name: 'C D'}, {PK: 3, Name: 'E F'}]
Posts: [{PK: 1, UserPK: 1, Content: '...'}, {PK: 2, UserPK: 3, Content: '...'}]
に見える私のコアデータモデルは、ユーザーと記事の間に設定関係を持っており、それは必要なように動作します。しかし、私の問題は、サーバーから新しいデータセットを受け取ったときに、できるだけ早くこれらのオブジェクトとその関係を作成することです(ばかげた量のRAMを使用せずに)。
問題は、投稿をユーザーに関連付けることです。それを行う "通常の"方法は基本的にはpost.user = user;
と書いていますが、これは私がuser
をディスクからロードする必要があります。
私の現在の計画は、すべてのユーザーを読み込み、フォルトし、PKを実際のオブジェクトにマップするNSDictionaryを作成することです。そうすれば、投稿に関連付ける必要があるユーザーをすばやく見つけることができます。しかし、このソリューションは、本質的にはほんの些細な操作であるはずのものにとっては少し複雑なようです。