2012-03-15 14 views
1

私は現在、アプリケーション用のデータモデルを作成していますが、実装を開始する前に正しく設計されていることが非常に重要です。そうでなければ、大きな問題になります。iOS - コアデータの関係。マッピングテーブル/多対多の関係

私の状況は、私はPostであるエンティティを持っています。各投稿には多くのTagsが関連付けられています。最初は、各Post内に一連のタグを格納したかったのですが、これが正規化されず、繰り返しデータがあることに気付きました。各投稿は互いに共通のタグを持つ可能性があります。

これにより、Tagエンティティが作成されました。私の問題は関係をモデル化する方法です。多くの投稿は多くのタグに関連付けられています。各タグは、1つまたは複数のポストに関連付けられてもよい。

アイデア?マッピングテーブルが必要ですか、またはCore Dataがこれを処理しますか?ありがとう。

答えて

7

コアデータは多対多リレーションシップをサポートしているため、モデルを正しく定義していれば問題ありません。 enter image description here enter image description here

+1

enter image description hereは私がデータベースを移入していたときに、これらはNSManagedObjectsとして表現されている方法については困惑している一つのことを推測:例えば?オブジェクトに投稿を格納するので、タグを設定するときは、複数のタグを1つの投稿にどのように設定できますか?また、同じデータを持つ2つのタグを作成しないようにするにはどうすればよいですか? – Tim

+0

アップルのdocs "Core Data Programming Guide"(https://developer.apple.com/library/mac/#documentation/cocoa/conceptual/coredata/cdprogrammingguide.html)を読むには少し時間がかかると思います。その後、devを起動し、元に戻り、もう一度それを読んでください。あなたがそれを読むたびに、物事は意味を持ち始めます。 – Gobot

+0

@Gobotでは、Core Data多対多関係の使い方の例を示すことができますか?通常、SQLiteでは、多対多関係を表す別のテーブル呼び出しPost-Tagを作成する必要があります – onmyway133