我正在爲使用Laravel 5.3構建的論壇構建內部郵件系統。基本上,我想要發送消息功能,類似Linkedin- User
可以發送電子郵件到另一個User
,反之亦然。給定的對話將會有一個線程,這將在兩個用戶之間進行。我一直在瀏覽一些關於StackOverflow的問題,但是在數據庫設計方面還沒有完全找到我的內容。內部郵件系統laravel數據庫設計
這是我的想法是:
messages
:
- ID PK
- SENDER_ID FK到
users
。user_id
- 內容
message_recipients
:
- ID PK
- MESSAGE_ID FK到
messages
。id
- recipient_id FK到
users
。id
但是,我不知道該類型的關係的100%,應該有一個users
,messages
和message_recipients
之間。用戶會有很多消息。消息將屬於用戶。但是,我如何考慮message_recipients
表?
隨時提出不同的設計:)
謝謝。我會試試:) – AshMenhennett
@AshMenhennett你已經問過使用關係,它應該是'UserTo'模型中定義的兩個'belongsTo()'關係本身,但是具有不同的外鍵。如果聽起來陌生,創建'Message'模型並在'User'和'Message'之間使用兩個hasMany()'關係,可以更簡單地處理消息和更多可讀代碼。這兩種方式在不同的情況下都很好。 –
感謝您的輸入。我會看看這個。 – AshMenhennett