CoreData:当 nil 时,deleteObject 在关系上出现错误
我们有一个具有两个一对多关系的项目。当我们尝试删除父对象时,我们遇到了核心数据错误。仅当子关系为空时才会发生这种情况。例如:
一个项目有许多待办事项和消息。如果我们创建一个项目并向其添加一条消息和一个待办事项,然后在 ManagedObjectContext 上调用 deleteObject,则没有问题。但是,如果我们创建一个新项目,然后尝试调用deleteObject,而不创建任何待办事项或消息,我们就会遇到关系错误。
We have a project that has two one to many relationships. We encounter a core data fault when we try to delete the parent object. This ONLY happens if the child relationships are empty. So for example:
A project has many to-dos and messages. If we create a project and add a message and a to-do to it, and subsequently call deleteObject on the managedObjectContext we have no problem. BUT if we create a new project and then try to call deleteObject without ever creating any to-do's or messages we run into a relationship fault.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我们通过将逆关系的删除规则从无效更改为无操作来解决此问题。这是有道理的,因为这种关系是可选的。
We resolved this by changing the inverse relationship's delete rule from nullify to no-action. This makes sense since this relationship is optional.