NSPredicate 在 NSFetchRequest 中等于 nil
NSPredicate equals nil in NSFetchRequest
我想使用 NSPredicate
从核心数据中获取对象。我做到了,但是当我启动 NSFetchRequest
时,NSPredicate
等于控制台中显示的 nil。我有 Xcode 6.4,Swift 1.2。我重新启动 Xcode 但我得到了相同的结果。我怎样才能做到?
func fetchRequest() -> NSFetchRequest {
let fetchRequest = NSFetchRequest(entityName: "Car")
let sortDescriptor = NSSortDescriptor(key: "personCar", ascending: true)
fetchRequest.predicate = NSPredicate(format: "personRelationship.namePerson contains[c] %@", currentPerson)
fetchRequest.fetchBatchSize = 50
fetchRequest.sortDescriptors = [sortDescriptor]
println(fetchRequest)
return fetchRequest
}
来自控制台的消息
<NSFetchRequest: 0x1700db040> (entity: Car; predicate: ((null)); sortDescriptors: ((
"(personCar, ascending, compare:)"
)); batch size: 50; type: NSManagedObjectResultType; )
确保您的 fetchRequest.predicate
值已设置(即不是 nil)。
您 post 中的代码 表明 predicate
值已分配。但是,如果未设置 NSFetchRequest.predicate
属性,则 println 控制台消息将为 predicate
值显示 ((null))
。
我想使用 NSPredicate
从核心数据中获取对象。我做到了,但是当我启动 NSFetchRequest
时,NSPredicate
等于控制台中显示的 nil。我有 Xcode 6.4,Swift 1.2。我重新启动 Xcode 但我得到了相同的结果。我怎样才能做到?
func fetchRequest() -> NSFetchRequest {
let fetchRequest = NSFetchRequest(entityName: "Car")
let sortDescriptor = NSSortDescriptor(key: "personCar", ascending: true)
fetchRequest.predicate = NSPredicate(format: "personRelationship.namePerson contains[c] %@", currentPerson)
fetchRequest.fetchBatchSize = 50
fetchRequest.sortDescriptors = [sortDescriptor]
println(fetchRequest)
return fetchRequest
}
来自控制台的消息
<NSFetchRequest: 0x1700db040> (entity: Car; predicate: ((null)); sortDescriptors: ((
"(personCar, ascending, compare:)"
)); batch size: 50; type: NSManagedObjectResultType; )
确保您的 fetchRequest.predicate
值已设置(即不是 nil)。
您 post 中的代码 表明 predicate
值已分配。但是,如果未设置 NSFetchRequest.predicate
属性,则 println 控制台消息将为 predicate
值显示 ((null))
。