iOS 11.0 Core Data NSException设置反向关系时

时间:2017-09-30 22:20:57

标签: core-data swift3 ios11

这个问题今天首次发生,我无法找到有关此主题的任何内容。

问题:在Core Data中设置一对一关系的值时,应用程序仅在iOS> 11中以NSException崩溃。阻止这种情况发生的唯一方法是删除反向关系。这修复了NSException,但稍后会出现其他问题。

设置:我们有一个FeedUser托管对象。 Feed.author是与用户NSManagedObject的一对一关系,User.authored是与Feed NSManagedObjects的多对多关系。

此设置在iOS版本中运行良好< 11.0,但在11> =当我为Feed设置author或我添加到User.addToFeeds(..)时,它会因NSException而崩溃。

设置中是否有任何遗漏或有人遇到过类似的东西?

用户设置 enter image description here

Feed设置 enter image description here

1 个答案:

答案 0 :(得分:1)

好的,我已经解决了这个问题。

解决方案令人惊讶,而且根本不是NSExceptions所指出的。在我的NSManagedObject类Feed(我已经扩展它)中,我创建了一个计算变量isAuthor来确定当前登录的用户是否是此feed的作者。那导致了许多难以追踪的奇怪错误。我更改了该变量的名称,但您可以在http://mikeabdullah.net/nsmanagedobject-method-kvc-clash.html

上找到该文章的说明