神奇的记录 - MR_createEntity 返回 nil

Posted

技术标签:

【中文标题】神奇的记录 - MR_createEntity 返回 nil【英文标题】:Magical Record - MR_createEntity returns nil 【发布时间】:2016-05-05 19:23:52 【问题描述】:

我无法找出我的代码有什么问题。我正在尝试将 MagicalRecord 与 Swift 一起使用。当我做简单的 createEntity 时,它给了我 nil:

let a = Subject.MR_createEntity() <--- This line is working perfectly
let b = Points.MR_createEntity()  <--- This line returns nil
let c = Class.MR_createEntity()   <--- This line returns nil

这是我的类实现:

主题:

@objc(Subject)
class Subject: NSManagedObject 

    @NSManaged var name: String?
    @NSManaged var classes: NSSet?

类:

@objc(Class)
class Class: NSManagedObject 

    @NSManaged var name: String?
    @NSManaged var teacherName: String?
    @NSManaged var subject: Subject?
    @NSManaged var points: NSSet?

积分:

@objc(Points)
class Points: NSManagedObject 

    @NSManaged var date: NSDate?
    @NSManaged var points: NSNumber?
    @NSManaged var maxPoints: NSNumber?
    @NSManaged var classType: Class?

来自 .xcdatamodel 的屏幕:

【问题讨论】:

【参考方案1】:

在初始化MagicalRecord的时候,可以开启core data日志,这样就知道实体创建失败时的情况了。

MagicalRecord.setLoggingLevel(MagicalRecordLoggingLevel.Warn)

【讨论】:

【参考方案2】:

解决方案:

    在你的 .xcdatamodel Editor-->Add Model Version...-->Finish 现在产品-->清洁

一切正常。

【讨论】:

以上是关于神奇的记录 - MR_createEntity 返回 nil的主要内容,如果未能解决你的问题,请参考以下文章

核心数据和神奇的记录

AFIncrementalStore 的神奇记录

神奇的记录:总和聚合

神奇的记录排序错误

一对多的神奇记录

神奇的记录只保存内存