我有一个奇怪的问题。
所以构建一个使用核心数据的iOS应用程序。我有一个学生实体和一个会话实体。学生会议是一对多。
在学生实体上,有一个称为“会话”的字段/关系来表示学生可以拥有的许多会话。
在会话实体上,有一个名为" student“的字段/关系来表示它所属的学生。
同样在学生实体上,有一个名为" session“的字段/关系来表示该学生所在的当前会话。
我遇到的问题是,当我结束一个学生会话,并将会话属性设置为nil (student setSession:nil;)时,会话上的学生属性也会变为空。
当我尝试这样做的时候:
[session student]我得到一个null。
我能够解决这个问题的唯一方法是将"Inverse“类型设置为"No Inverse”,在这种情况下,将学生设置为空setSession:nil不会使会话学生为空。当然,我得到了关于“错误配置的属性”、"Student.session应该有一个倒数“和"Session.student应该有一个倒数”的漂亮的xcode警告。
有没有办法让我保持反向关系,而不是在student.session设置为nil时使session.student无效?我尝试将学生实体和会话实体上的删除规则更改为“无操作”,但似乎无济于事。
如有任何建议,我们将不胜感激。也许没有反转才是正确的方式..只是想确认一下我做得是否正确。
谢谢!
发布于 2012-07-30 04:41:54
您可以定义一个从学生到会话的一对多关系“会话”,具有反向关系“学生”,以及从学生到会话的一对一关系"current_session“,具有不同的反向关系"current_student”。
https://stackoverflow.com/questions/11712402
复制相似问题