我有以下实体:
订单< - >> OrderLines<< - >产品
订单实体有一个' orderNo '与' orderNo '具有一对多关系的属性OrderLines中的属性。 OrderLines 实体与产品实体具有多对一关系。
我想传递客户代码并检索我们之前订购的产品实体中的所有产品。
我尝试了以下谓词搜索,但没有占上风:
let pred : NSPredicate = NSPredicate(format: "orderlines.order.customer = %@", customer)
我也试过
let pred : NSPredicate = NSPredicate(format: "ANY orderlines.order.customer = %@", customer)
我经常遇到错误:
Can not map from a to-many to a to-one relationship
有什么建议吗?
更新
检索数据的代码是:
static func repeatsList(customer: String) -> NSArray{
let ordersRequest : NSFetchRequest<Products> = Products.fetchRequest()
let pred : NSPredicate = NSPredicate(format: "ANY SELF.line.order.invoicecustomer == %@", customer)
ordersRequest.predicate=pred
do{
let repeatsArray = try GlobalHelpers.getContext().fetch(ordersRequest)
return repeatsArray as NSArray
}catch let error as NSError {
let empty : NSArray = [error]
return empty
}
}