2009-06-27 5 views
1

多くの配列のNSArrayContainer Arraycontent:タグ、フィード、物語コアデータ、私はこれまでのところ、私のアプリケーションでは3つのエンティティを持っている

タグはフィードに対多の関係を持っているし、ツーを持っているフィード

ストーリーとの多くの関係。

私は各エンティティごとにNSArrayControllerを持っています。一つはタグ、一つはfeedという名前、もう一つはstoryという名前です。 これらはすべて、ファイルの所有者から取得するのと同じ 'managedObjectContext'を共有します。 AC名前付きフィードのコンテンツセットは、「タグ」コントロールキーにバインドされています。選択、キーパス:フィード

3番目の配列のコンテンツセットをすべてのフィードのすべてのストーリーにバインドします。選択されたタグ:私はキーのパスを使用しようとしました: "@ unionOfArrays.stories"が動作するように取得できませんでした。

どのようにすればいいですか?

答えて

2

まず、何かの作業を取得すると矛盾だあなたの質問内の1つのものがありますIBでこれを設定すると、うまく動作しませんでした。あなたは確かにmanagedObjectContextをApp Delegateのそれに束縛することを意味します。

選択したタグのすべての記事を表示すると仮定すると、セットアップで間違いがあります。

1.あなたが言及すべての関係のために逆の関係

をチェックし、あなたはそれぞれの関係を逆に設定する必要があります。

1対多のタグ - >フィード関係の場合、記述した「フィード」というタグ要素にはたくさんの関係があります。

「タグ」と呼ばれるフィードエンティティにも1つの関係があります。 あなたは、以下のように飼料あるとして逆の関係を選択したい:

Single Feed Relationship http://img20.imageshack.us/img20/2557/tagsinglefeedrelationsh.jpg

2.リンクアップストーリー

をあなたは、あなたの物語のいずれかを作成しましたか言及していません。

  • が選択したタグで選択されたフィード
  • ストーリー選択したタグのすべてのストーリー
  • フィード

    1. タグ:あなたがコードで何もしていないと仮定すると、私は4つのアレイコントローラを持っていると思います

      コンテンツセットが何かに束縛されていないStoriesアレイコントローラを使用している場合は、物事を真空状態で効果的に作成できます。フィードやタグにはリンクされません。これらのエラーが発生しています。コントローラの「選択したタグで物語」

      3.セットアップ

      あなたはコンテンツ配列ではなく、コンテンツセットを設定する必要があります。

      コンテンツアレイを「選択したタグのフィード」コントローラにバインドします。

      • キー:arrangedObjects
      • キーのパス:unionOfArrays.stories @

      これは、このようにすべてのストーリーを取得し、コントローラの「選択したタグでフィード」内のすべてのオブジェクトにキーのパスの物語を送ります選択したタグ内のすべてのフィード。

      4.ロックンロール!

      完了です。あなたが本当にこの設定を得るのに苦労しているなら、教えてください。私が作ったXIBファイルへのリンクを投稿することができます。

    +0

    今、それは今働いている。ありがとうたくさん:) –

    +0

    これで動いているので、私の答えをupvoteして受け入れるか、それとも受け入れることができますか?ありがとう。 –

    +0

    申し訳ありませんが、明らかに私は十分な評判を得ていないので、あなたに+1を与えることは許されません –

    0

    @distinctUnionOfSets.storiesを試すことができます。すべてのコアデータ1-n関係はセットとして実装されます。彼らは、ファイルの所有者

    から を取得

    彼らはすべて同じ を共有する「managedObjectContext」:

    +0

    ありがとうございました:) 私のACコントロールストーリーエンティティのcontentSetをコントローラキー 'arrangedObjects'とキーパス '@ distinctUnionOfSets.stories'にバインドすると、コンパイラはcontentArrayを使用するように指示しますが私はバインドされたオブジェクト [エンティティ:ストーリー、選択されたオブジェクトの数:0](null)から、 " [エンティティ:フィード、選択されたオブジェクトの数:1] ):[<_NSControllerArrayProxy 0x17cde0> valueForUndefinedKey:]:このクラスは、キーdistinctUnionOfSetsのキー値コーディングに準拠していません。 –