4

私の iPhone アプリでは、TableViewController を使用して、1 つの同じタグ (以下のコードの currentTag) を共有する写真のリストを表示しようとしています。写真とタグは、データベース内で「多対多」の関係です。各写真には「tags」という名前の属性があり、そのタイプは NSSet です。各タグには「photos」という名前の属性があり、そのタイプも NSSet です。タグには「name」という属性があります。 関係

私は次のコードを実行しようとしています:

 NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Photo"];
 request.predicate = [NSPredicate predicateWithFormat:@"tags contains %@",currentTag];

問題は、引用符のために predicateWithFormat 内で多くのことを実行できないことです。また、「含む」というキーワードはここでは機能しません。これらは文字列専用です。私も試しました

 [NSPredicate predicateWithFormat:@"%@ IN tags",currentTag]

運も悪い...

もう 1 つ、誰かがhereで同様の質問をしていることがわかりました。次に、次のコードを試してみましたが、テーブル ビュー コントローラーにはまだ何も表示されません。ただし、その行にコメントすると、すべての写真が表示されます。

 [NSPredicate predicateWithFormat:@"self in %@",[currentTag photos]]

誰か助けてくれませんか?

4

1 に答える 1

8

いずれかを使用:

[NSPredicate predicateWithFormat:@"ANY tags == %@",currentTag];
于 2012-05-04T21:10:16.883 に答える