あなたはこれを少し後ろ向きに持っているようです。Post をシリアライズしたい場合は、PostSerializer が必要です。
次のような Post モデルのセットアップが既にある場合は、
class User < AR::Base
has_many :posts
end
class Post < AR::Base
belongs_to :user
end
次を使用してシリアライザーを作成します。
rails g serializer post
rails g serializer user
これは次のようになります
class PostSerializer < ActiveModel::Serializer
attributes :id, :title
has_one :user
end
コントローラーで、セットアップされていることを確認します。
class PostsController
respond_to :html, :json
def show
@post = Post.find(params[:id])
respond_with @post
end
end
これで準備完了です。/posts/1.json を呼び出すと、
{"post":{"id":1,"title":"the title","user":{"id":1,"name":"jesse"}}}