0
私は2つの要素の間に関係があります。基本的に、投稿は&です。私はカテゴリを変更したいとき、私はPOST
/post/:post_id/categories
に行い、Jsonシリアライザの異なるjson名
PostsController
index
とindex, show, update, destroy & *categories*
CategoriesController
と:私のアプローチで
render json: @post.categories,
each_serializer: CategorySerializer
それはうまくいきます。しかし、私は、JSONで受け取る答えは次のとおりです。
posts: [{id:1, title:'Category 1'}, {id:2, title:'Category 2'}]
しかし、所望の出力は次のようになります。
categories: [{id:1, title:'Category 1'}, {id:2, title:'Category 2'}]
は、どのように私はこれを変更することができますか?
私はガイドとしてこれを使用します。しかし、私はあなたの最初の行を使用しませんでした。私は変更するだけです: from: 'render json:@ post.categories' to:' render {categories:@ post.categories} ' 私は理論上何かのために前の行が必要ですか?または私の回避策を使用することはできますか? ありがとうございました!できます!しかし、私は最初の行の理由を知りたい(または、問題なく回避策を使用できるかどうかを知りたい): – joseglego
最初の行の理由は、 '@ post'変数デフォルトでは、 ['ルートキーを追加する方法'](https://github.com/rails-api/active_model_serializers/blob/master/docs/howto/add_root_key.md#how-to-add-root-key)もチェックすることができます。と[ルートキーを上書きする](https://github.com/rails-api/active_model_serializers/blob/master/docs/general/rendering.md#overriding-the-root-key)がありましたが、私の答えのようなハック。 –