【问题标题】:Core Data NSPredicate: Return all objects which are related to another object whos ID appears in a given array核心数据 NSPredicate:返回与另一个对象相关的所有对象,该对象的 ID 出现在给定数组中
【发布时间】:2021-11-09 20:46:12
【问题描述】:

我的对象图是这样的

服务器 > 事件

每个事件实体都有一个非可选的属性 ID。

一个事件只能属于一个服务器,但一个服务器可以关联多个事件

给定一组事件 ID [1, 2, 3]

我希望所有具有 ID 的事件的服务器都出现在给定的数组中

我试过了,但我得到'无法解析格式字符串'

NSPredicate(format: "SUBQUERY(events, $event, ANY $event.clientID in %@)", clientIDs as CVarArg)

【问题讨论】:

    标签: ios swift core-data nspredicate


    【解决方案1】:

    尝试将@count 添加到您的子查询中。

    NSPredicate(format: "SUBQUERY(events, $event, ANY $event.clientID in %@).@count != 0", clientIDs as CVarArg)

    结帐these docs 以获得一些参考。

    【讨论】:

    • 谢谢!这是正确的 SUBQUERY(...) 返回一个数组。我们需要检查它的 count 是否 != 0 以返回谓词所期望的 true 或 false。
    猜你喜欢
    • 2010-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-01
    • 2022-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多