2012-02-01 7 views
2

で世話をしていない私はこのような3つのエンティティを持っています - 多くの場合、関係の最後に2つの矢印があるはずですはコアデータが自動的に逆の関係

ここに2つの質問があります。

1st。私のようなその関係についての世話をした後、任意のデイ・クラス(NSManagedObjectのカスタマイズサブクラス)の場合、オブジェクト:

Week* aWeek; 
Day *aDay; 
[aWeek addDayObject:aDay]; 

が、私は本当に週エンティティの関係「日」を通じての日を見つけることができ、

が、逆に、Dayオブジェクト "aDay"の関係 "thisWeek"はまだゼロであることがわかりました。

私はあなたがNSMangedObjectのサブクラスをレコード生成した後、あなたは対多の関係に対処し、自動的に逆の関係で世話をするだろう助けるために

- (void)addXXXObject:(xxx)xxx 

のようなメソッドを持っていることを聞きました。

しかし、ここではそう思われません。だから自分の逆の関係を自分自身で処理しなければならないのですか?

コアデータが提供する場合、どうすれば自動的に逆関係にオブジェクトを追加できますか?

第2位。

私が望むものは、ユーザが「Days」のいずれかを削除するたびに、「Week」にまだ関係があるかどうかをチェックし、

それは、単にユーザがその日を削除させなければ

ていない場合、我々はまた、「週」のオブジェクトを削除します。

多対多関係の削除ルールはどのように使用しますか?

私はこれらのルールとそれほど明確ではないよ

...

ありがとう!

答えて

5

CoreDataは、実際に両方のエンティティで定義した長さの逆関係を処理する必要があります。 hereを参照してください。

私はを使用するには、week->日の日 - >週の関係とカスケードため削除規則を無効化。
週を削除すると、それに関連付けられたすべての日も削除されます。
1日を削除すると、その日が削除されます。週がもうなくなった週は自動削除できません。ただし、週の日数を守り、の場合は自己を削除することができます。

+0

ありがとうございます!本当に役に立ちます! –

関連する問題