私はメッセージングシステムを実装しています。 私は、これらのテーブルがあります:Thread
、User
、ThreadUser
、Message
3番目のテーブルの多対多の関連テーブルを使用する必要がありますか?
- 各
Thread
は各User
がThreadUser
(多対を経て、多くのThread
秒を持っている(多対多)ThreadUser
- を経て、多くの
User
秒を持っています - 各
Message
が属する多)Thread
(多対一) - 各
Message
はに属し(多対1)
は、それは、スレッド内のメッセージのみがそのスレッド内のユーザーではなく任意のユーザであることができることを保証するために、ThreadUser
代わりのUser
にMessage.from
ポイントを持っているのは良いアイデアです私のDB?何が欠点ですか?ここで
私はこの権利を理解していることを確認するだけでなく、明確化のために質問したいと思います...スレッドとユーザーの多対多の関係の性質は何ですか?スレッド、例えば、スレッド1は 'User 1'と' User 2'に同時に関連付けられますか? –
多くのユーザはスレッドに関与しています – benwaffle