Ruby on Rails(mysql)でTwitterのクローンを作ろうとしています。
機能として必須のフォロー機能といいね機能を作ろうとしているのですが、データベース設計で自分だけで考えるには限界が来てしまいました。
現在でRT機能は考えていません。
アドバイスい頂けるとありがたいです。
Userテーブル
name
usersame
email
profile
icon_img
header_img
tweetテーブル
messages
user_id
favoriteテーブル
tweet_id
user_id
relationテーブル
user_id
follower_id
followered_id
followeredテーブル
user_id
followerテーブル
user_id
関係性
user1対多tweet
user1対多favorite
tweet1対多favorite
user多対多follower&followered
いいね機能のテーブルまでは大体合っている?と思っているのですが、
フォローフォロワーの機能の関連性が結構時間かけたのですが全くうまく掴めませんでした。
よろしくお願いいいたします。
追記
みなさま回答ありがとうございます
回答に個別に返信したいのですが、自分の実力不足もあり理解しきれていない点も多いです。
追記でお聞きしたいことがあります。
回答ではrelationテーブル一つだけでもフォロー、フォロワーの関連性とデータは取得できる、というお話でした。
これ以外にでも自分で検索してgithubのTwittercloneなどを見ていると、
relationsテーブルに
フォローとフォロワーのカラムが存在しているものが多く見受けられました。
ここでの回答だとuser_idとフォローされてるidがあればデータは取ってこれる、ということでしたが
フォローとフォロワーのid両方をrelationテーブルに入れても大丈夫なのでしょうか?

回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/24 08:26