Parse のドキュメントでは、多対多の関係の逆を行う方法について説明していますが、参照するオブジェクトは 1 つだけです。著者を知っていて、本を見つけたいという本と著者の例から作業すること。私が欲しいのは、2 人以上の著者が貢献した本を見つけることです。
https://www.parse.com/docs/relations_guide#manytomany-relations
私が試したのは、次のコードのようなものです。
// suppose we have a author object, for which we want to get all books
PFObject *authorA = ...
PFObject *authorB = ...
// first we will create a query on the Book object
PFQuery *query = [PFQuery queryWithClassName:@"Book"];
// now we will query the authors relation to see if the author object
// we have is contained therein
[query whereKey:@"authors" equalTo:authorA];
[query whereKey:@"authors" equalTo:authorB];
コードはある程度機能します。
しかし、authorA には多くの本があり、authorB には 1 つの本がある場合、クエリで 1 つの本が見つかります。authorA に 1 冊の本があり、authorB に複数の本がある場合、多くの本がクエリで見つかります。
私が欲しいのは、著者関係に authorA と authorB の両方を持つ本を見つける方法です。