【问题标题】:Saving NSManagedObject via MagicalRecord does not work通过 MagicalRecord 保存 NSManagedObject 不起作用
【发布时间】:2019-08-30 21:14:18
【问题描述】:

我已经创建了一个对象:

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

【问题讨论】:

    标签: ios swift core-data magicalrecord


    【解决方案1】:

    致电MR_saveToPersistentStoreAndWait 保存数据。检查NSManagedObjectContext (MagicalSaves)类中的所有保存方法。

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

    【讨论】:

      【解决方案2】:

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

      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 博客以获取完整的演示代码和步骤。 如果您想了解更多信息,请告诉我。

      【讨论】:

      • @Matrosov Alexander 我希望这个答案对你有用。如果您需要更多帮助,请告诉我。谢谢
      猜你喜欢
      • 2017-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多