用nsprecate CloudKit比较两个键值



我正在尝试编写一个谓词,比较云工具包数据库中的两个键。到目前为止,我可以将其中一个键与一个常量值进行比较。我想用它在产品库存不足时发送通知。

我有一个名为products的记录类型,它由一个更新的计数和一个永不改变的minCount组成。我用它来显示"库存低"。标签每当计数<= minCount.

下面是我使用通知常量值的谓词的一个例子:

let predicate = NSPredicate(format: "count <= %i", 10)

对于一个特定的产品,我知道minCount是10,所以这对一个产品有效,但其他产品有不同的minCount值。有办法做到这一点吗?

由于CloudKit将期望右边的值是一个常量而不是一个键,因此如果您执行以下操作,它将向您抛出您在评论中提到的错误:

let predicate = NSPredicate(format: "count <= minCount")

但是根据这个答案,这应该是可行的

let predicate = NSPredicate(format: "%K <= %i", "count", "minCount")

最新更新