0
正在设置NSPredicate重写我的客观存在的C代码(IOS),以迅速而现在在迅速面临Coredata NSPredicate一些问题,因为有一些多对一的关系,反之亦然..我用下面的代码,斯威夫特CoreData
let fetchRequest = NSFetchRequest(entityName: "TUMessage")
let sortSequence = NSSortDescriptor(key: "sequence", ascending: true)
let sortTime = NSSortDescriptor(key: "epoch_time", ascending: true)
var filterPredicate:NSPredicate = NSPredicate(format:"thread == [c] %@",contact.threads.anyObject())
fetchRequest.predicate = filterPredicate
var sortDescriptor:NSArray = NSArray(objects: sortTime,sortSequence)
fetchRequest.sortDescriptors = sortDescriptor
fetchRequest.fetchBatchSize = 50
return fetchRequest
其中"TUMessage"
是我们需要从,"sequence"
用于排序的取出结果取数据的表,"thread == [c] %@"
是消息表的关系(多对一因为每个接触有多个线程),
而contact.threads.anyObject()
是我试图去做的谓词add.Unfortunately正在以下错误
type anyobject? does not confirm to protocol, CVarArgType
任何帮助,将不胜感激..
谢谢
我目前无法检查,但我假设你已经打开可选的:'contact.threads.anyObject()!' – 2014-09-22 12:48:26
不,它不起作用 – sam 2014-09-22 13:01:41
如果thread是一个relatiti onship,为什么你使用[c]执行不区分大小写的搜索? – 2014-09-22 13:18:03