关系 属性 计数的关键路径
keyPath for relationship property count
我正在尝试为获取的结果控制器创建一个 NSPredicate,该控制器应该只观察具有关系(不为零)并且关系计数大于 0 的对象。
我已经了解了如何使用字符串作为谓词的参数:
[NSPredicate predicateWithFormat:@"excludedOccurrences.@count == 0"];
来自:
但我试图摆脱文字字符串,所以我想使用关键路径。
示例:
import UIKit
import CoreData
class Animal: NSManagedObject {
@NSManaged var name: String
@NSManaged var friends: NSSet?
}
let keyPath = #keyPath(Animal.friends.count)
导致错误:
对成员 'count'
的引用不明确
#keyPath
不知道 @count
运算符。但是你可以
将它用于 "Animal.friends" 键路径并附加 @count
在谓词格式字符串中:
NSPredicate(format: "%K.@count = 0", #keyPath(Animal.friends))
我正在尝试为获取的结果控制器创建一个 NSPredicate,该控制器应该只观察具有关系(不为零)并且关系计数大于 0 的对象。
我已经了解了如何使用字符串作为谓词的参数:
[NSPredicate predicateWithFormat:@"excludedOccurrences.@count == 0"];
来自:
但我试图摆脱文字字符串,所以我想使用关键路径。
示例:
import UIKit
import CoreData
class Animal: NSManagedObject {
@NSManaged var name: String
@NSManaged var friends: NSSet?
}
let keyPath = #keyPath(Animal.friends.count)
导致错误: 对成员 'count'
的引用不明确#keyPath
不知道 @count
运算符。但是你可以
将它用于 "Animal.friends" 键路径并附加 @count
在谓词格式字符串中:
NSPredicate(format: "%K.@count = 0", #keyPath(Animal.friends))