2017-01-16 5 views
0

私はミックスと呼ばれる音の "コレクション"のテーブルを持つアプリケーションを作成しています。ミックス内の各サウンドには、個々のサウンドボリュームが関連付けられています。Swift CoreDataモデルヘルプ? (例題)

余計なサウンドを含む余分なサウンドパックをダウンロードできることを念頭に置いて、私にとってはうまくいくデータモデルを考え出すのに苦労しています。

ここには基本的な考え方が含まれています。 enter image description here

私はミックスのためのコアデータエンティティから始まり、サウンドの位置の文字列を含んでいました。個々のボリュームを実装しようとするまで、これは素晴らしい結果でした。私はその後、各サウンドのcoredataエンティティは動作すると思ったが、より多くのサウンドがダウンロードできるようになったのを見て、それはcoredataに合っていないようだ? これをどのように達成することができ、サウンドパックのダウンロードやその他の拡張のための将来的な証拠になるかについての少しの指導が必要です。

答えて

1

セットアップを簡単にするために、このようにすることをおすすめします。 enter image description here

編集:(私はあなたのセットアップを考えた後、全体の答え/設定を編集した)

実際に、あなたも「ミックス」エンティティを削除することができ、そして単に「Mixtheme」で行く、とフェッチすべての "ミックスヘム"を避け、ユーザインタフェースの "ミックス"のリストを手作業で作成します。あなたがこの方法:)

を望むように、次のことができます。

はオプションを持つすべてのmixthemes取得:(あなたが追加することを選択した名前/ロック/その他/ロック解除の特性を)

自分で音を接続しているすべてのmixethemesを取得プロパティ。

実際には、これら2つのエンティティのみが必要です。

+0

私はあなたがこれでどこに行くのか分かりますが、コーデタータのエンティティにサウンドを保存することは、コアレタのポイントを見逃しているようです。サウンド用に編集して保存する必要がある唯一のプロパティはボリュームです。各サウンドのサウンドエンティティをハードコーディングするのは少しばかげているようですね。それは、私が全体的な "永続的なデータ"の事とコアデータに一般的ではないことを助けるものではありません。 – calebmanley

+0

@calebmanley実際の「オーディオファイル」がサウンドの意味であれば、それを保存しませんか?私が示した "健全な"エンティティは、オーディオへの参照にすぎません。ベストプラクティスのために、オーディオをディスクから保存して読み込む必要があります。 (もしかしたら、あなたがストリームしたい(?)、そのオプションはあなたのものです)、サウンドエンティティ "fileurl"にプロパティを追加し、サウンドなどのためにディスクの場所を保存することができます。 –

+0

sound "sound"エンティティ。それは私の正確な計画でしたが、アプリの最初の起動であるかどうかを確認してから、それぞれの「健全な」エンティティをコアデータに追加することをお勧めしますか? – calebmanley

関連する問題