在空NSSet上一对多迁移结果

时间:2019-04-30 15:59:56

标签: swift core-data database-migration magicalrecord

迁移模型时遇到问题。

首先,我有一个用户撰写了一篇文章。我制作了这样的模型:

Model v1

现在,我为这样的模型制作了第二个版本:

Model v2

然后在我的AppDelegate中,我叫MagicalRecord.setupAutoMigratingCoreDataStack()

可以进行迁移,但是user上的文章列表为空。

有人知道如何使用user上的上一篇文章自动设置列表吗?

1 个答案:

答案 0 :(得分:0)

您应该将user上的关系类型设置为“一对多”,并将article上的关系类型设置为“一对一”。

这将为您提供数据库上的一对多关系,这意味着一个用户可以拥有很多文章。

要在第一个用户中访问大量文章,请使用:

let user = User.mr_findFirst()!
let articleList = user.article?.allObjects as! [Article]
for anArticle in articleList {
     // Do something here
}

或者在所有用户中:

let userList = User.mr_findAll() as! [User]
for user in userList {
     let articleList = user.article?.allObjects as! [Article]
     for anArticle in articleList {
          // Do something here
     }
}