1

私は少し道に迷っています。あなたが私を助けてくれることを願っています。

私は2つの配列を持っています

let stars = ["Paul", "Ringo"]
let visitors = ["bob", "mary"]

それから Core Data エンティティRockstarPersonがあります。そして、両者の間には一対多のファン関係。

ここで、特定のロックスターをいくつか見つけて、ファンとしての訪問者がいないことを確認したいと考えています。

私は、大まかに次のような複合述語でそれをやろうとしています:

let starsPredicate = NSPredicate(format: "id IN %@", stars)
let fansPredicate = NSPredicate(format: "NOT (fans.personid CONTAINS %@)", visitors)

そして最後に

let compoundPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [starsPredicate, fansPredicate])

これにより、次の2つの質問が発生するのではないかと思います。

  1. fansPredicate の正しい構文は何ですか? 1 つの値では問題なく動作しますが、配列ではクラッシュします

  2. これは、複合述語でまったく可能ですか? Personエンティティが空の場合、compoundPredicate からゼロ レコードを取得すると思います。

4

1 に答える 1