問題一覧に戻る
上級APIとリアルタイム
問題63: JSON API - API設計とシリアライザー

シリアライザーを使用してRailsでよく構造化されたJSON APIを構築する方法を学習します。APIバージョニング、適切なHTTPステータスコード、JSONレスポンスのフォーマット、Active Model SerializersやJBuilderなどのツールを使用してJSON出力構造を制御する方法をマスターします。

# APIネームスペースを定義
namespace :api do
namespace : do
resources :posts
end
end

# シリアライザークラスを作成
class PostSerializer < ActiveModel::
attributes :id, :title, :body
:user
end

# Controller
def index
posts = Post.all
# シリアライザーでレンダー
render json: posts, status: :
end

# 関連付けを含める
render json: @post, : [:comments, :user]