コアデータを使用しています。私は2つのエンティティの音楽と歌詞を持っています。私はinverseとTo-manyの関係musicTolyricsを作成しました。私は1曲のタイムスタンプと歌詞の数を節約しなければならない。このコードを使用しています。多対多関係のコアデータ/
これはcoredataでこれを保存しています。しかし、私は1曲のレコードの数を保存したいと思っています。ちょうど外国のキーのように..私はこれをどのようにすることができますか?助けてください。
ありがとうございます。
コアデータを使用しています。私は2つのエンティティの音楽と歌詞を持っています。私はinverseとTo-manyの関係musicTolyricsを作成しました。私は1曲のタイムスタンプと歌詞の数を節約しなければならない。このコードを使用しています。多対多関係のコアデータ/
これはcoredataでこれを保存しています。しかし、私は1曲のレコードの数を保存したいと思っています。ちょうど外国のキーのように..私はこれをどのようにすることができますか?助けてください。
ありがとうございます。
あなたの逆が間違っているようです。かなり曖昧な "Music"ではなく、 "Song"と呼んでみましょう。したがって、Song
には「歌詞」があります。他の曲も同じLyrics
を使用することができます。
これまでのところ、多くの曲が同じ歌詞を使用できるという点で多対1の関係があります。
私がお勧めするのは、これをCore Dataモデラーでマップすることです。次に、自動的にクラスファイルを生成します。あなたは、あなたがセットにオブジェクトを追加することができ、対多の関係でそれが表示されますので、あなたは、例えば必要があります:コアデータにおける2つのオブジェクトをだ
Song *mySong = [NSEntityDescription insertNewObjectForEntityForName:@"Song"
innManagedObjectContext:context];
Lyrics *myLyrics = [NSEntityDescription insertNewObjectForEntityForName:@"Lyrics"
innManagedObjectContext:context];
を。あなたがモデルに正しく物事を設定した場合は、自動的に生成される方法addSongObject
が表示されます
Song.lyrics = myLyrics;
[myLyrics addSongObject:mySong];
:今は逆との関係を定義します。
正しくモデル化していれば、 'myLongrics'に' mySong'オブジェクトを追加する必要はありません。 「Song」に歌詞を設定すると、逆の関係が自動的に処理されます。 –
いいえ..曲のような関係が必要なのは、歌詞付きのタイムスタンプの数があるかもしれません。複数の歌で歌詞を共有することはできません。 – iProgrammer
ああ、ok。タイムスタンプは何を表していますか?それは曲の長さですか、または曲内のポイントですか? –