我有一个名为TaskManager
的核心数据,此核心数据目前只有一个实体,Task
:任务有多个属性:
import Foundation
import CoreData
@objc(Task)
class Task: NSManagedObject {
@NSManaged var context: String
@NSManaged var date: String
@NSManaged var detail: String
@NSManaged var id: String
@NSManaged var responsable: String
@NSManaged var status: String
@NSManaged var summary: String
}
如果我添加新实体,例如User
:
import Foundation
import CoreData
@objc(User)
class User: NSManagedObject {
@NSManaged var id: String
@NSManaged var name: String
}
和我Reset contents and settings...
来自模拟器,让它知道新的实体,我的应用程序启动但我无法做任何事情,它只是被冻结,无法点击按钮,UITableView滚动不起作用,当我停止模拟器卸载应用程序时,我不能,按住左键单击什么都不做......我必须从我的coredata中删除实体,移动到废弃{ {1}}我的核心数据自动生成用户,关闭模拟器,重新启动所有内容并再次运行,但我需要的是与其他实体User一起工作,所以删除它是......非常愚蠢.. < / p>
如何在不冻结所有应用程序的情况下创建新实体?
感谢您的帮助。
的问候。 Fselva
答案 0 :(得分:2)
每次更改数据模型时,都必须在设备或模拟器上卸载应用程序。 因此,在下一次构建和运行中,将加载更新的DB。当然,您将丢失先前版本中加载的所有数据。