崩溃:Swift,在已有的核心数据上添加新实体

时间:2015-06-18 12:10:11

标签: ios swift core-data

我有一个名为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

1 个答案:

答案 0 :(得分:2)

每次更改数据模型时,都必须在设备或模拟器上卸载应用程序。 因此,在下一次构建和运行中,将加载更新的DB。当然,您将丢失先前版本中加载的所有数据。