核心数据应该有倒数

Noa*_*ick 4 core-data objective-c ios

可能重复:
每个核心数据关系都必须具有反转吗?

我有以下关系的实体: 在此输入图像描述

一个CombinedSH必须有一个Subject和一个StudyHour.
一个Subject不能有CombinedSH.
一个StudyHour不能有CombinedSH.

在我的应用程序中,a Subject/ a StudyHour将有一个没有意义CombinedSH.问题是Xcode给了我以下警告:

警告:配置错误的属性:CombinedSH.studyHour应该有反向.

警告:配置错误的属性:CombinedSH.subject应该有反向.

所以Xcode说应该有反向 - 但在我的应用程序中它没有意义.我该怎么办?

Mar*_*n R 15

您可以定义从的反向关系Subject,CombinedSH并将其标记为"可选".然后"主题"不需要"CombinedSH".

这样做会让Xcode感到高兴,但也有另一个优势.假设你有对象

CombinedSH *csh1;
Subject *s1;
Run Code Online (Sandbox Code Playgroud)

csh1.subject = s1;
Run Code Online (Sandbox Code Playgroud)

如果s1被删除会发生什么?没有反比关系,csh1.subject会指向一些已删除的对象.

但是,如果您定义反向关系,并将该关系的"删除规则"设置为"Nullify",则删除会s1自动设置

csh1.subject = nil
Run Code Online (Sandbox Code Playgroud)

因此subject不能再指向已删除的对象.