CoreDataでこれをどのようにモデル化するのか少し混乱しますか?それはかなり単純な概念です、私は、プレーヤーが特定のゲームでどれだけ長くプレイしたかを追跡できるようにしたいと考えています。だから私は(簡潔にするために簡略化)以下のオブジェクトを持っている:私は、特定のゲームでは、プレイヤーの再生時間を振り返って、またはゲーム内のチーム全体の再生時間を見ることができるようにしたいCoreDataと中間体
Player
- name
- currentGamePlayedTime
(1:1 relationship to Team)
Team
- name
(1:1 relationship with Player)
(1:Many relationship with Game
Game
- date
(Many:1 relationship with Team)
。しかし、私はそれをどのようにモデル化するのか分かりません。 SQLのアプローチを使用すると、中間テーブル(下に示す)があり、ゲームでプレイした各プレーヤーとそれがプレイした対応する時間に15のエントリがあります。
GameRecord
- GameID
- PlayerID
- TimePlayed
私のアプリは、プレーヤーが現在のゲームに出場し、現在Playerオブジェクトの上にそれを格納しているどのくらいのワークアウトにできますが、私は相当にその再生時間を節約するために長期的な解決策を知りませんゲームオブジェクト - オブジェクト上にあるのか中間オブジェクトを介しているのか。
私はいくつかを見ましたpeople do use intermediates。しかし、私はまた、SQLプラクティスを使用することは、オブジェクトグラフについて考える覚書ではないことも読んでいます。だから、このようなものをどのようにモデル化すべきかという考えがほしいと思っていました。
ありがとうございます。私はこのアプローチを特定してうれしいです! :-)だから私はゲームですべての追跡をした後、私はすべてのプレイヤーとすべてのプレイタイムを持っています。中間体を作るプロセスは何でしょうか。 'playerRecord = GameRecord(context:managedObjectContext)、gameRecord.playedTime = 15、gameRecord.gameRelationshipName = Game、gameRecord.playerRelationship = Player、managedObjectContext.save()を試してみましょう。 ' – Jonnny
はい、まさにそうです。逆関係は、to-manyでなければならず、CoreDataによって自動的に更新されます。 – pbasdf
ありがとう! :-) – Jonnny