我有一个Card
和Printing
s的数据库,我在一个商店(参考数据)和我的用户的Container
和CardInstance
s的数据另一家商店(苹果建议)。每个用户的卡都是一个表CardInstance
,其中包含与卡的特定打印相对应的特定printingID
。我正在尝试使用NSFetchedResultsController
来过滤卡片的值,以便它可以使用可重复使用的代码管理分组和内容。
同样,这里是表格的基本概述:
Card
(其中包含nameNormalized
和alphaNormalized
以及typeNormalized
属性,我想在“提取结果控制器”中对其进行过滤和分组。
Printing
(具有card
关系和特定printingID
)
CardInstance
(container
属性,printingID
属性以及带有谓词{{1}}的{{1}}上的printingFetch
已获取属性。
Printing
(具有printingID = $FETCH_SOURCE.printingID
s的多对多关系。
给定Container
,我想使用NSFetchedResultsController,以便我可以更改名称和类型部分之间的排序和分组。所以我有一个fetchRequest,我将实体类型设置为CardInstance
,将一个谓词设置为给定容器Container
。
1)如何设置排序描述符,以便我可以对CardInstance
或container = %@
进行排序?
2)如果我想查找包含@“the”字样的所有卡片,如何过滤结果?我正在思考printingFetch.card.nameNormalized
,@“the”的内容,但这只会导致崩溃。
我意识到我可以手动完成所有操作,但是如果容器最终包含很多卡片,那可能会太慢而且我不想重新编写{{{的分区和分组代码1}}应该自动为我做。