在 swift 中请求核心数据的选定日期
request selected date of coredata in swift
大家早上好,
我想请求名称字段为 "meyer"
的我的核心数据的所有数据
目前,我是这样做的,但我认为,这不是最好的方法。
let managedObjectContext = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
var lebensmittel = [LM_ITEMS]()
var LM_ITEM:NSManagedObject!
var x :Int = 0
var NumberOfLM :Int = 0
func DatenAbrufen() {
let fetchRequest = NSFetchRequest(entityName: "LM_ITEMS")
if let fetchResults = managedObjectContext!.executeFetchRequest(fetchRequest, error: nil) as? [LM_ITEMS] {
lebensmittel = fetchResults
while x < fetchResults.count {
var TEMP_LM_ITEM = lebensmittel[x]
if TEMP_LM_ITEM.name == "meyer" {
LM_ITEM = lebensmittel[x]
NumberOfLM++
}
x++
}
}
LebensmittelTable.reloadData()
}
在 NSFetchRequest 中使用谓词而不是循环:
let managedObjectContext = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext!
var lebensmittel = [LM_ITEMS]()
func DatenAbrufen() {
var fetchRequest = NSFetchRequest(entityName: "LM_ITEMS")
fetchRequest.predicate = NSPredicate(format: "name = %@", "meyer")
if let fetchResults = managedObjectContext.executeFetchRequest(fetchRequest, error: nil) as? [LM_ITEMS] {
lebensmittel = fetchResults
}
LebensmittelTable.reloadData()
}
大家早上好,
我想请求名称字段为 "meyer"
的我的核心数据的所有数据目前,我是这样做的,但我认为,这不是最好的方法。
let managedObjectContext = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
var lebensmittel = [LM_ITEMS]()
var LM_ITEM:NSManagedObject!
var x :Int = 0
var NumberOfLM :Int = 0
func DatenAbrufen() {
let fetchRequest = NSFetchRequest(entityName: "LM_ITEMS")
if let fetchResults = managedObjectContext!.executeFetchRequest(fetchRequest, error: nil) as? [LM_ITEMS] {
lebensmittel = fetchResults
while x < fetchResults.count {
var TEMP_LM_ITEM = lebensmittel[x]
if TEMP_LM_ITEM.name == "meyer" {
LM_ITEM = lebensmittel[x]
NumberOfLM++
}
x++
}
}
LebensmittelTable.reloadData()
}
在 NSFetchRequest 中使用谓词而不是循环:
let managedObjectContext = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext!
var lebensmittel = [LM_ITEMS]()
func DatenAbrufen() {
var fetchRequest = NSFetchRequest(entityName: "LM_ITEMS")
fetchRequest.predicate = NSPredicate(format: "name = %@", "meyer")
if let fetchResults = managedObjectContext.executeFetchRequest(fetchRequest, error: nil) as? [LM_ITEMS] {
lebensmittel = fetchResults
}
LebensmittelTable.reloadData()
}