根据一对多关系中的属性对 NSFetchRequest 进行排序?
Posted
技术标签:
【中文标题】根据一对多关系中的属性对 NSFetchRequest 进行排序?【英文标题】:Sorting an NSFetchRequest Based on a Property within a One-to-Many Relationship? 【发布时间】:2011-08-05 08:12:14 【问题描述】:我一直在搜索 SO 搜索结果,但(到目前为止)找不到这个问题的答案。
给定一个与实体 B 具有一对多关系的数据实体 A,有没有办法让我的 NSFetchedResult 对实体 B 的 property 进行排序。即我可以进行排序吗描述符键深入到实体 B?我试过点符号等,但没有任何效果。
例如实体 A 具有关系 inEntityB
。实体 B 有一个属性entityBproperty
。如何根据它们各自的inEntityB
关系的entityBproperty
值对实体 A 的列表进行排序?
类似的东西(不,这不起作用):
request.sortDescriptors = [NSArray arrayWithObjects:
[NSSortDescriptor sortDescriptorWithKey:@"entityAproperty" ascending:NO selector:@selector(localizedStandardCompare:)],
[NSSortDescriptor sortDescriptorWithKey:@"inEntityB.entityBproperty" ascending:NO selector:@selector(localizedStandardCompare:)],
nil];
在实体 A 中复制我想要排序的 entityBproperty
似乎效率非常低。您可以划分数据模型以使其更易于管理,这难道不是关系的全部意义吗?
非常感谢任何建议!谢谢!
编辑:我不确定我可以添加哪些额外信息来帮助澄清问题,但鉴于迄今为止缺乏回应,如果有人对我可以在此处添加的其他内容提出建议,我全是耳朵。不幸的是,我还没有赏金特权,或者在这种情况下我会考虑一个,因为这似乎是一个可能更晦涩的问题。
【问题讨论】:
您找到解决方案或解决此问题的方法了吗?我的情况完全一样。如果您能提供任何有用的信息,请告诉我。谢谢。 很遗憾没有。不过,似乎必须有办法做到这一点。您可以使用动态属性来做到这一点。 我们问的是同一个问题吗?这是我的:***.com/questions/13002915/… 【参考方案1】:看起来可能与此问题 Help sorting an NSArray across two properties (with NSSortDescriptor?) 重复
不幸的是,使用上面的点语法似乎没有简单的方法来做到这一点。
【讨论】:
您引用的问题似乎与核心数据无关。然而,我的问题是核心数据NSFetchRequest
问题的核心(请原谅双关语)。以上是关于根据一对多关系中的属性对 NSFetchRequest 进行排序?的主要内容,如果未能解决你的问题,请参考以下文章