gpt4 book ai didi

ios - 如何向 NSPredicate 添加多个字段

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:56:00 24 4
gpt4 key购买 nike

我想使用查询字符串搜索一组用户的名字或姓氏。下面是谓词,但出现异常。

NSPredicate *sortingPred = [NSPredicate predicateWithFormat:@"(User.first contains[c] %@) OR (User.last contains[c] %@)", keyword, keyword];

异常(exception):

exception   NSException *   name:@"NSUnknownKeyException" reason:@"[<User 0x12911980> valueForUndefinedKey:]: this class is not key value coding-compliant for the key User."   0x13653620

最佳答案

您不能在谓词中包含实体名称,只能包含(或键路径):

[NSPredicate predicateWithFormat:@"(first CONTAINS[c] %@) OR (last CONTAINS[c] %@)", keyword, keyword]

更新:“FIRST”和“LAST”在谓词中有特殊含义,它们用于指定数组中的第一个或最后一个元素(请参阅“谓词编程指南”中的 Aggregate Operations)。

可以通过使用 %K 格式扩展属性键来避免这种歧义:

[NSPredicate predicateWithFormat:@"(%K CONTAINS[c] %@) OR (%K CONTAINS[c] %@)",
@"first", keyword, @"last", keyword];

关于ios - 如何向 NSPredicate 添加多个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21004565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com