通过 MagicalRecord 保存 NSManagedObject 不起作用

Saving NSManagedObject via MagicalRecord does not work

我已经创建了一个对象:

let exercise = ExerciseEntity.mr_createEntity()

func updateLocalExercise(with exercise: ExerciseEntity, completion: @escaping (ResultInfo<[ExerciseEntity]>) -> Void) {

                MagicalRecord.save({ (context) in

if let localExercise = exercise.mr_(context) { this actually nil and throws some error in log
}

}

我的问题是如何正确保存ExerciseEntity.mr_createEntity

请尝试以下代码来存储实体。

let compltedTaskModel : CompletedTaskModel = CompletedTaskModel.mr_createEntity()!
 compltedTaskModel.title = taskList.title
 compltedTaskModel.description_text = taskList.description_text
 compltedTaskModel.workflow_description = taskList.workflow_description
 compltedTaskModel.last_updated = taskList.last_updated
 compltedTaskModel.respondent_pk = taskList.respondent_pk
 compltedTaskModel.isFlag = taskList.isFlag
 NSManagedObjectContext.mr_default().mr_saveToPersistentStoreAndWait()

不要忘记在 AppDelegate 文件中添加以下行。

MagicalRecord.setupAutoMigratingCoreDataStack()

有关包含步骤的完整演示代码,请参阅 this raywenderlich 博客。 如果您想了解更多信息,请告诉我。

调用MR_saveToPersistentStoreAndWait保存数据。检查 NSManagedObjectContext (MagicalSaves) class.

中的所有保存方法

您应该使用 MR_createEntityInContext 而不是 MR_createEntityMR_createEntity 已弃用。