Twitterのようなフォロー/フォロワーの実装

練習としてTwitterクローンを作っています。
Twitterのようなフォロー/フォロワーの実装の際、テーブルの設計をどのようにすべきでしょうか?

Userテーブルのidを関連付けるようなRelationテーブルを作ってみたものの、
フォローしたいユーザーのプロフィール画面からフォローボタンを押した際のactionの扱いがわからず、データ設計から間違っているのかと思い、質問しています。

Realationテーブル

プロフィール画面とフォローボタン

User DBのPropatityに対して、1:N の「Follow」と「Following」 をそれぞれ作ってあげればOKです。

挙動としては、FollowButton の時にLoggedin ユーザーに対してUserをUpdateするように作ります。

Adaloの公式チュートリアルにもありますので、詳細はそちらでも可能です。

Adalo特典のNoCodeCampアカウントのこちらでも実装してるので、参考にどうぞ。

特典はこちらから確認できます。

「いいね!」 1

なるほど!その設計でできるんですね!ありがとうございます!

ところで、このテーブル設計だとNoCodeでは実現できないケースや、
スクラッチで作る場合と違う独特の設計の考え方などはあったりするんでしょうか?

「いいね!」 1

フォロワー機能って、スクラッチで作ったこと無いです。が、基本構造は同じです。

スクラッチで作る場合と違う独特の設計の考え方などはあったりするんでしょうか?

設計っていう考え方が、人によって違うので、なんとも言えないですが、AdaloのDBの考え方は、いわゆるスクラッチのDBと全く同じ考え方です。あまり気にせず、やってもいいと思います。

「いいね!」 1