在具有多对一/一对多关系的核心数据中构造谓词

Constructing predicate in Core data with many-to-one / one-to-many relationships

我找不到执行此操作的方法:我只想获取我图书馆中的所有页面。

所以,函数应该如下所示:

func pages(inLibrary id: String) -> [Page] {
    //What is the predicate should I use to achieve this ? 
}

感谢您的解释。

这应该可以解决问题(您可以删除 SELF.,但这是为了更容易解释):

NSPredicate(format: "SELF.book.library.id == %@", id)

您检索 BookPages 是 "in",SELF.book 在页面获取请求中。

然后您可以检索 Library BookSELF.library 在 Book Fetch Request 中。

您可以使用 SELF.idLibrary 提取请求中的 id 检索 Library

通过组合,您可以使用SELF.book.library.idPages中检索Library

您可以删除 SELF.