2

私は少なくとも1つの要素を含むこの対多の関係を持っています:

Appointment <<------>> Invitee

appointment.inviteesは、結果として生じる順序付けられた関係NSOrderedSetです。

フェッチされた結果コントローラーによって制御されるテーブルビューに、招待者セットの最初の要素とともに予定が一覧表示されます。

次に、を使用して、招待者の名前でこのリストを検索NSPredicateします。しかし、述語の順序付きリストの最初の要素をどのように参照できますか?

私は試した:

fetchRequest.predicate = [NSPredicate predicateWithFormat:
       @"invitees[FIRST].lastName CONTAINS[cd] %@", searchTerm];

しかし、unimplemented SQL generation for predicateエラーが発生します。結果はコレクションですが、厳密には配列ではないため、これは理にかなっています。それでも、sqliteストアは順序をモデル化する必要があるため、取得可能である必要があると思います。

何かアドバイス?

4

1 に答える 1

1

明らかに、これは最も専門的な Core Data の専門家でさえ答えられない質問です。

回避策は、最初の要素を個別の対 1 関係としてモデル化し、残りを同じ関連エンティティに基づくオプションの対多関係としてモデル化することです。

Appointment <<------>  mainInvitee        (Invitee)
            <<------>> additionalInvitees (Invitee)
于 2012-11-16T19:08:54.380 に答える