3

Core Data を使用した最初の iOS アプリがあり、Entry エンティティがあります。エントリには「Tag」という属性があり、それは NSString です。

したがって、ユーザーが新しいエントリを作成すると、タグ フィールドに任意の文字列を入力できます。これはコア データに NSString として保存され、後でタグによる検索に使用できます。

問題は、アプリに複数のタグ機能を実装したいのですが、それを行う方法がわかりません.Core Dataを使用することを考慮して、iOSでこのような場合の正しい設計は何ですか.

たとえば、誰かがエントリを作成して、「食べ物」、「食料品」、「りんご」などのタグを付けたいとします。それらすべてを Entry エンティティのプロパティに割り当てるにはどうすればよいですか? それらを Core Data にどのように保存すればよいですか? 個別のエンティティとして 一意の ID を持つタグ? それらを取得するにはどうすればよいですか? また、ユーザーがエントリの複数のタグを編集するにはどうすればよいですか?

回答ありがとうございます。

4

3 に答える 3

5

これを行うには、2 つの一般的な方法があります。

  1. 最も簡単な方法は、コンマ区切りのタグを NString に格納することです。(ただし、タグを使用したフィルタリングやその他の操作はできません)

  2. 別のエンティティを作成 - 名前と ID でタグ付けします。そして、多対多の関係を持ちます (1 つのタグを複数のエントリで使用できると仮定します) 。

于 2013-06-24T08:59:54.050 に答える
0

複数の方法で行うことができます。選択した文字でタグを分離し、コード内の NSString を分割してタグを取得することができます。または、物事を正しくしたい場合は、別のエンティティを使用してタグの ID を保存します。

于 2013-06-24T09:03:51.677 に答える
-2

そのチュートリアルを使用する

これは、コア データを理解するのに役立ちます。

于 2013-06-24T09:02:36.567 に答える