概要
ユーザーが他のユーザーをフォローできるソーシャル機能。フォロー/フォロワー関係を管理し、タイムライン機能(#143)の基盤となる。
要件
機能
- ユーザーページからフォロー/アンフォローができる
- フォロワー数・フォロー中数をプロフィールに表示
- フォロー中のユーザー一覧・フォロワー一覧を閲覧できる
DB設計案
CREATE TABLE user_follows (
follower_id TEXT NOT NULL, -- フォローする側
followee_id TEXT NOT NULL, -- フォローされる側
created_at TEXT NOT NULL,
PRIMARY KEY (follower_id, followee_id),
FOREIGN KEY (follower_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (followee_id) REFERENCES users(id) ON DELETE CASCADE
);
API 案
POST /users/:userId/follow # フォローする
DELETE /users/:userId/follow # アンフォローする
GET /users/:userId/followers # フォロワー一覧
GET /users/:userId/following # フォロー中一覧
依存 issue
概要
ユーザーが他のユーザーをフォローできるソーシャル機能。フォロー/フォロワー関係を管理し、タイムライン機能(#143)の基盤となる。
要件
機能
DB設計案
API 案
依存 issue