私は、アルバムと呼ばれるコアデータエンティティを持っています。アルバムにはソングエンティティ(曲と呼ばれる)との関係があり、ソングにはタグエンティティの任意の数(タグプロパティで)があり、タグには名前があります。 アルバムの曲にタグが含まれているかどうかを確認します。単一のNSPredicateを使用します。頭に浮かんだNSPredicatesと2対nの関係
アイデアた:
[NSPredicate predicateWithFormat: @"ANY (ANY songs).tags LIKE %@", someTagName];
しかし、これは(「書式文字列を解析できません」)、実行時にエラーが発生します。私は成功しなかった様々なバリエーションを試しました。
これを行う方法はありますか?
本当にうまく聞こえましたが、試しましたが、もう一度やり直しています。これは通常、私にはしばしば起こることではありません... ***キャッチされていない例外 'NSUnknownKeyException'の理由によるアプリケーションの終了、理由: '[ valueForUndefinedKey:]:エンティティアルバムは、キー "曲。@ distinctUnionOfSets.labels"に対してキー値コーディングに準拠していません。 私はラウンドを試みましたが、@distinctUnionOfSetsを置くことができる場所を見つけられませんでした。 私は間違って何を手がかりですか? –
@Julian申し訳ありませんが、これはテストなしで書いた私のせいです。私はコアデータプロジェクトを持っていないので、私は頭の上から取り組んでいます。 @distinctUnionOfSetsではなく@unionOfSetsを試しましたか?私はいつもこれらの集合演算子で少し苦労します。私はしばしば[album valueForKeyPath:@ "@ songs.tags"]のような行にブレークポイントを置き、その結果がデバッガにあるかどうかを確認する必要があります。それがセットのセットなら、@ unionOfSets.songs.tagsはそれを行うべきです。それが他のものなら、キーパスを適切に変更する必要があります。 –