>我正在尝试对coreData中的实体执行获取。 此实体与另一个实体具有一对一的关系。 我只想获取第一个实体中与第二个实体中的特定项目相关的项目。 我正在尝试这个我知道不正确的谓词:
let fetchRequest: NSFetchRequest<ItemA> = NSFetchRequest(entityName: "ItemA")
fetchRequest.predicate = NSPredicate(format: "itemA.itemB.itemBId == %d", Int(itemB.itemBId))
目前您正在使用 itemA.itemB.itemBId
,这里您使用的是 itemA 的新实体,其中您不需要给出它的名称,因为此谓词将应用于itemA
实体,因此您只能在谓词内使用itemB.itemBId
也可以使用 SELF.itemB.itemBId
(我不确定 SELF 还是 self, 显然你可以查一下)。
所以我认为你可以得到类型 itemA
的项目,其关系itemB
的 id 为 itemBId
,如下所示:
let fetchRequest: NSFetchRequest<ItemA> = NSFetchRequest(entityName: "ItemA")
fetchRequest.predicate = NSPredicate(format: "itemB.itemBId == %d", Int(itemB.itemBId))