CoreData派生属性查看一对多关系是不是包含属性
Posted
技术标签:
【中文标题】CoreData派生属性查看一对多关系是不是包含属性【英文标题】:CoreData derived attribute to see if a one-to-many relationship contains attributeCoreData派生属性查看一对多关系是否包含属性 【发布时间】:2020-06-09 19:32:40 【问题描述】:我有一个 CoreData 模型,它有一个名为 Artist 的实体,它与一个名为 Album 的实体具有一对多的关系。 Album 实体有一个布尔属性“isLocal”。我想为 Artist 实体编写一个 CoreData 派生属性,一个名为 hasLocalAlbums 的布尔值,它将反映关系中的任何专辑是否具有 isLocal == true。
我找不到任何关于非数字派生属性(@sum、@avg 等)的文档。有谁知道这是否可能?
谢谢!
【问题讨论】:
【参考方案1】:根据文档here,对多键路径支持的唯一函数是@sum 和@count。
如果你想使用 kludge,你可以将 isLocal
属性实现为整数,值为 1 表示真,0 表示假(可能使用包装器进行转换),然后使用带有 @sum 的派生属性来表示 @ 987654323@。任何非零值都对应true
,但它的值实际上是本地专辑数量的计数。
【讨论】:
以上是关于CoreData派生属性查看一对多关系是不是包含属性的主要内容,如果未能解决你的问题,请参考以下文章
NSPredicate:“添加”一对多关系CoreData中所有实体的属性值