0

我试图弄清楚是否可以使用相同的获取请求对我的数据模型进行两种搜索,但根据搜索输入是字母还是数字使用不同的谓词。

所以我有一个联系人实体和一个电话实体。联系人有一个电话号码列表(工作、手机等)。所以我想要做的是有一个获取请求,其中包括我认为会带回联系人及其电话号码列表的子实体?然后根据用户输入的是字母还是数字,搜索联系人姓名或电话号码。我不确定如何在谓词中执行后一部分,或者如果它甚至可能,因为它是一个数字列表而不仅仅是一个(否则我认为我可以做'contact.number')。

如果不可能,我不确定还能尝试什么。我使用联系人姓名显示结果。因此,如果我对电话场景有完全不同的获取请求,我可以取回所有电话号码 - 但是我必须进行第二次获取以获取与这些电话号码相关联的所有联系人,以便能够显示结果的名称?这似乎真的很慢。我有 40k 联系人.......

4

1 回答 1

1

以下关于“联系人”的谓词可用于获取电话号码以给定前缀开头的所有联系人:

[NSPredicate predicateWithFormat:@"ANY phoneNumbers.number BEGINSWITH %@", numberPrefix];
于 2012-08-26T20:18:38.300 回答