Ceeds Academy教材アプリ教材・症状語・タグで検索
索引グラフ試す
アプリFW/ライブラリ▸FastAPI

FastAPI: REST と CRUD(GET/POST/PUT/DELETE)

hands-on所要 25分最新草稿
前提: FastAPI: リクエストバリデーション(Pydantic)
意味グラフ(この教材と内容的に近い教材・1ネスト)
例え(Analogies)
CRUD=台帳の4操作

REST/CRUDは台帳の4操作。POST=追記、GET=参照、PUT=書き換え、DELETE=消す。URLは「どの台帳(リソース)か」、メソッドは「何をするか」。

概要

📍 app-frameworks ▸ FastAPI ▸ REST と CRUD | 種別: hands-on | facts_as_of 2026-06(FastAPI 0.136)

公式ドキュメント — hands-on

🎞 スライド

REST = リソース指向のURL × HTTPメソッド

CRUD(作成/取得/更新/削除)をメソッドで表す

対応表(テキスト図)

操作 メソッド パス コード
一覧/取得 GET /items, /items/{id} 200
作成 POST /items 201
更新 PUT /items/{id} 200
削除 DELETE /items/{id} 200/204

URLは「もの」、メソッドは「動詞」

/items が名詞、GET/POST/... が動作

—
出典(sources)

fastapi.tiangolo.com ; REST原則 ; FastAPI 0.136 / 2026-06確認

確認問題(Review-Questions)
リソース作成成功で返すのが適切なステータスは?択一
基礎公式
解答・解説▾ 開く

201 Created。

RESTで作成・取得・更新・削除に対応するHTTPメソッドは?記述
基礎公式
解答・解説▾ 開く

POST・GET・PUT・DELETE。

目次
例え概要公式ドキュメント出典確認問題
鮮度
最新
更新: 2026-06-15
次回棚卸し: 2026-12-15
周期: 6か月
版: FastAPI 0.136

概要

REST の考えで CRUD(作成/取得/更新/削除)を設計する。リソース指向のURL(/items)と HTTPメソッドを組み合わせ、結果に応じたステータスコードを返す。

公式ドキュメント準拠(FastAPI 0.136)

@app.get("/items")           # 一覧
@app.get("/items/{id}")      # 取得
@app.post("/items")          # 作成(201)
@app.put("/items/{id}")      # 更新
@app.delete("/items/{id}")   # 削除
  • リソース指向URL(/items)+HTTPメソッドで操作を表す。
  • ステータスコードを適切に(200=成功、201=作成、404=見つからない 等)。

出典: FastAPI

🧭 誤解訂正集

よくある誤解 正しい理解
URL に動詞を入れる(/getItems) URL はもの(名詞)、動作はメソッドで表す
何でも 200 を返す 作成は 201、不在は 404 等を使い分ける
メソッドはどれでも同じ GET/POST/PUT/DELETE で意味(CRUD)が違う

📖 用語

  • REST … リソース(URL)とHTTPメソッドで操作を表す設計様式。
  • CRUD … 作成(Create)/取得(Read)/更新(Update)/削除(Delete)。
  • リソース指向URL … /items のように「もの」を表すURL。
  • ステータスコード … 結果を表す番号(200/201/404/405 等)。

✅ 確認の目安(can-do)

CRUD と HTTPメソッド・URL の対応を設計でき、**「この操作はどのメソッド・どのステータスコードが適切か・なぜか」**を説明できる。

⚠️ エラー復旧集

症状 原因 復旧
405 Method Not Allowed メソッド/パス不一致 HTTPメソッドとパスを確認
作成に 200 を返している ステータス漏れ 作成は 201 を返す(status_code=201)