目次
Supabaseでブログ投稿テーブルを作成しよう!
ER図


🔍 「posts」テーブルって何?
Webサイトやブログには「記事」や「投稿」といったデータがありますよね? 例えば、ブログを書くときに「タイトル」「本文」「画像」「投稿日時」などの情報を保存したいですよね。
Supabaseの「posts」テーブルは、そんなブログの投稿データを管理するためのものです!
📌 「posts」テーブルのカラム(項目)一覧
カラム名 | データ型 | 説明 |
---|---|---|
id |
int8 |
投稿ごとのID(自動で増える) |
user_id |
uuid |
投稿したユーザーのID |
category_id |
int8 |
カテゴリのID(どの種類の記事か) |
title |
varchar |
記事のタイトル |
content |
text |
記事の内容(本文) |
image_path |
text |
画像のURLまたはパス |
created_at |
timestamp |
記事を作成した日時 |
updated_at |
timestamp |
記事を更新した日時 |
📌 「users」テーブルのカラム(項目)一覧
カラム名 | データ型 | 説明 |
---|---|---|
id |
uuid |
ユーザーごとのID(主キー) |
name |
varchar |
ユーザーの名前 |
email |
varchar |
ユーザーのメールアドレス |
password |
varchar |
ハッシュ化されたパスワード |
created_at |
timestamp |
ユーザー登録日時 |
updated_at |
timestamp |
ユーザー情報の更新日時 |
「user_id
」や「category_id
」には、他のテーブルのデータを関連付けることができます。これを 「外部キー(Foreign Key)」 といいます。
🛠 Supabaseで「posts」テーブルを作る方法
Supabaseでは、 GUI(画面操作) と SQL(コードを使う方法) の2種類の方法でテーブルを作れます。
✅ 方法①:GUIで作る(初心者向け)
- Supabaseにログイン し、プロジェクトを開く。
- 「Table Editor」 を開く。
- 「New Table」ボタンをクリック。
- 「posts」という名前のテーブルを作成。
- カラムを追加(上の一覧を参考に)。
user_id
やcategory_id
の 外部キー設定 をする。- 「Save」ボタンをクリック して完了!
✅ 方法②:SQLで作る(少し上級者向け)
CREATE TABLE posts (
id SERIAL PRIMARY KEY,
user_id UUID REFERENCES users(id) ON DELETE CASCADE,
category_id INT REFERENCES categories(id),
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
image_path TEXT,
created_at TIMESTAMP DEFAULT NOW(),
updated_at TIMESTAMP DEFAULT NOW()
);
このSQLを 「SQL Editor」 に入力して実行すると、テーブルが作成されます!
🔗 外部キーってなに?
user_id
や category_id
は、 他のテーブルの情報とつながるカラム です。例えば、
user_id
→ ユーザー情報(usersテーブル)とつながるcategory_id
→ カテゴリ情報(categoriesテーブル)とつながる
つまり、 「この投稿は誰が作ったの?」 や 「この記事のカテゴリは何?」 という情報を管理できます!
🎯 まとめ
✅ Supabaseの「posts」テーブルは、ブログ記事を管理するためのもの!
✅ user_id
や category_id
は 外部キー(Foreign Key) を使って、他のテーブルとつなげられる。
✅ Supabaseでは、 GUI(Table Editor) か SQL(SQL Editor) でテーブルを作成できる。
✅ 外部キーの設定で、データの整合性を保つことができる!
これでSupabaseの「posts」テーブルについてバッチリですね!💡
ぜひ、実際にSupabaseで試してみてください! 🚀