gpt4 book ai didi

ios - 在索引 0 处插入元素,NSManagedObject

转载 作者:行者123 更新时间:2023-11-28 12:56:22 25 4
gpt4 key购买 nike

我无法在 CoreData 的第一个索引处插入元素

let appDelegate =
UIApplication.sharedApplication().delegate as! AppDelegate

let managedContext = appDelegate.managedObjectContext

let entity = NSEntityDescription.entityForName("Thing",
inManagedObjectContext:managedContext)

let thing = NSManagedObject(entity: entity!,
insertIntoManagedObjectContext: managedContext)

thing.setValue(name, forKey: "name")
thing.setValue(category, forKey: "category")

do {
try managedContext.save()
} catch let error as NSError {
}

如何在索引 0 处插入 thing?有可能还是我必须重写所有数据?谢谢!

最佳答案

您不能在特定索引处插入一个新的NSManagedObject。商店中的元素顺序由 CoreData 和 SQLite 管理。相反,您应该确保按照您想要的顺序获取对象。这是通过为您的提取请求指定一个排序描述符 ( NSSortDescriptor ) 来完成的。因此,如果您希望按 name 排序,您可以使用:

let nameSort = NSSortDescriptor(key:"name", ascending:true)
fetchRequest.sortDescriptors = [nameSort]

如果您想要一些其他排序顺序,如有必要,请向您的实体添加一个属性来表示该排序顺序,并为您创建的每个对象设置适当的值。

关于ios - 在索引 0 处插入元素,NSManagedObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34939905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com