我需要在CoreData中保留字符串数组,以后再使用谓词为该数组过滤数据。
根据此文章字段类型Transformable(带有自定义类[String])可以解决问题,我可以正确保存字符串数组: How to save Array to CoreData?
但是,我不能在此字段中使用谓词。具体来说,我的目标是找到所有与保存的数组中的至少一项匹配模式的项。
因此,回到问题所在:在CoreData中是否有一种存储数组的好方法,以便以后可以为其应用谓词?
答案 0 :(得分:1)
为CoreData
请勿将数组作为Transformable
中的Entity
字段
Entity
,使用该实体代替array
。Entity
与阵列替换Entity
之间创建关系。CoreObject
的{{1}}:NSPredicate(格式:“%K =%@”,#keyPath(YourArrayEntity.onlyField), matchingString)
NSPredicate(格式:“ ANY%K ==%@”,#keyPath(YourMainEntity.relationToArrayEntity),arrayEntityFoundInPreviousStep)