0

コア データ テーブルの内容を表示するテーブルビューを使用してアプリケーションを開発しています。データモデルは次のようなものです: Entity(name, code)->>Translation(text, code)

通常の NSFetchedResultsController を使用してすべてのエンティティを取得しますが、(tableview cellForRowAtIndexPath: を使用して) 各行にデータを入力するときが来ました。ユーザーが入力したコードに基づいて 2 つの翻訳を取得するには、各エンティティに飛び込む必要があります。私はそれを行うためにNSFetchRequestを使用していますが、それが正しいことであるかどうか疑問に思っていました(行にデータを入力するたびに1つのフェッチ要求)。セルに入力するたびに各翻訳を検索するのではなく、本能的に NSFetchedResultsController で必要なすべてのデータを取得しますが、その方法がわかりません。誰かアドバイスや興味深いリンクがありますか?

4

1 に答える 1

0

各セルが各 Entity オブジェクトに関連する Translation オブジェクトを表示する必要がある場合は、フェッチされた Entity オブジェクトから適切な Translation オブジェクトへの関係をたどるだけで済みます。

Entity オブジェクトをフェッチし、テーブルを構造化して表示したら、次のように各セル行の翻訳の値にアクセスします。

NSSet *translations=[anEntityObject valueForKey:@"translations"];

... tableview 行で表される Entity オブジェクトの Translation オブジェクトのセットを返します。

非常に一般的なルールとして、テーブルビューごとに 1 つのフェッチのみを行います。テーブル ビューは、1 つの特定のエンティティに関連するデータを表示するように構成する必要があります。

于 2011-03-01T18:43:22.473 に答える