私はエンティティスケジュールを持っています。 このスケジュールには、name、startdate、enddateなどの属性がいくつかあります。 時間との関係も1対多です。 タイムは、NSDateタイプの属性 'time'を1つのみ含むエンティティです。CoreDataに複数の属性を1つしか持たない、1対多をどのようにして保存できますか?
したがって、各スケジュールは1回以上行うことができます。
以前の実装ではNSDataに変換してNSDataに変換し、スケジュールエンティティ内に格納しました。私はそれが好きではなかった。
ここで、schedule.timesは、Timeエンティティを含むNSSetを提供します。 だから私は私が行う必要があるforループをしたいとき:
for(Time *time in schedule.times) {
NSLog("%@", time.time);
}
私の質問は:私は次の操作を行うことができるように、私はそれを設定することができます方法はありませんか?
for(Time *time in schedule.times) {
NSLog("%@", time);
}
はい、あなたは正しいです。私は単にそれを記録することに興味がありません。私はこれを行う簡単な方法があると思います。私は、schedule.timesがNSDateを含むNSSetの代わりにNSDatesのNSSetを返す方法を探していました。 – Pieter
'[schedule valueForKeyPath:@" times.time "]'を使うかもしれません。 '-valueForKey:'を 'NSSet'に適用すると、' -valueForKey: 'をセットのメンバーに適用することによって得られたすべての値のセットが合成されます。 –
@ken、あなたの答えに入れて、私はそこに投稿された私の鉱山を削除します! – jrturton