我试图弄清楚我是否可以使用相同的获取请求对我的数据模型进行两种搜索,但根据搜索输入是字母还是数字,使用不同的谓词。
所以我有一个Contact实体和一个Phone实体。联系人有一个phoneNumbers列表(工作,单元格等)。那么我想要做的是有一个获取请求,其中包含我认为会带回联系人的子实体及其phoneNumbers列表?然后,根据用户输入的字母或数字,搜索联系人姓名或电话号码。我不确定如何在谓词中执行后一部分,或者如果它甚至可能,那么它是一个数字列表而不仅仅是一个(否则我认为我可以做'contact.number')。
如果不可能,我不确定还有什么可以尝试的。我使用联系人姓名显示结果。因此,如果我对手机方案有一个完全不同的获取请求,我可以带回所有电话号码 - 但是我必须再进行一次获取,以便将所有联系人与这些电话号码绑定,以便能够显示结果的名字?这似乎很慢。我有40k的联系人.......
答案 0 :(得分:0)
以下关于“联系人”的谓词可用于获取所有具有以给定前缀开头的电话号码的联系人:
[NSPredicate predicateWithFormat:@"ANY phoneNumbers.number BEGINSWITH %@", numberPrefix];