0

ゲーム用のメッセージ ボード システムのようなものを構築していますが、関係のモデル化に問題があります。これが私がこれまでに持っているものです:

Models
------
User (Has Many Posts)
Post (Belongs to User, Belongs to Game)
Game (Has Many Posts)

これが私が追加する必要があるものです。

Models
------
Server (Belongs to Game but also part of Post)
Replies (Belongs to Post and Post's User but needs to function like private messaging)

これら 2 つのことをモデル化する最も簡単な方法は何ですか? サーバーの私の最善の推測は次のとおりです。

Server - Has Many Posts, Belongs To Game
Posts - Belongs To Server
Game - Has Many Servers

どこから返信を始めればよいかわかりません。投稿とユーザーには多くの返信がありますが、返信には 2 人のユーザーと 1 つの投稿があります。ありがとう。

4

1 に答える 1

0

私はこれらの関係でこれを解決しました:

モデルサーバー

belongs_to :game
has_many :posts

モデルゲーム

has_many :posts
has_many :servers

モデルの返信

belongs_to :post
belongs_to :poster, class_name: :user, foreign_key: :poster_id
belongs_to :replier, class_name: :user, foreign_key: :replier_id

モデル投稿

belongs_to :user
belongs_to :game
belongs_to :server
has_many :replies, dependent: :destroy

モデルユーザー

has_many :posts, dependent: :destroy
has_many :replies, dependent: :destroy
于 2012-09-11T20:27:05.710 に答える