●前提・実現したいこと
Laravel
Mysql
企業と学生のマッチングアプリの開発に当たって、メッセージ機能を実装しております。
メッセージ機能のデータベーズ構造についてアドバイスをいただけますと幸いです。
前提として、ユーザーは2つの属性があり、学生テーブル(Students)と企業テーブル(Companies)と別々で管理しております。
※それぞれ全く異なるカラムのため別々に作成しております。
●困っている点
メッセージ機能のデータベースの構造が分かりません。
ユーザーが1種類のみだけでしたら、
誰が送信したか判別する際は、Uersテーブル1つのみだけだと、messageテーブルを作成し、user_idで判別できると思うのですが、
今回のケースのように、students、companiesの別々の属性のユーザーがいる場合は、どのような構造になるのでしょうか?
●試したこと
student_messageテーブルを作成し、room_id, student_id, textカラムを付与し、
同様にcompany_messageテーブルを作成し、room_id, company_id, textカラムを付与しました。
その場合は指定のroomの指定の会社や学生のメッセージ一覧は取得できますが、
一つのroomでcompany_messageとstudent_messageの二つをLINEのように送った順に表示されるやり方が思いつきません。
そもそも、company_messageとstudent_messageに分けることが非効率なのでしょうか?
他にもっと効率よいDBの構造があれば教えていただきたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/09 00:59 編集
2021/12/09 01:13
2021/12/09 01:24
2021/12/09 01:43
2021/12/09 02:59
2021/12/09 04:32