発生している問題・エラーメッセージ
active_model_serializers
を使ってシリアライザーを作っているのですが、リレーション先のattributes
が効かず全カラムの値が返ってきます。
該当のソースコード
モデルのファイル
ruby
1class Hoge < ApplicationRecord 2 has_one :fugas 3end 4 5class Fuga < ApplicationRecord 6 has_many :bars 7end 8 9class Bar < ApplicationRecord 10end
シリアライザーのファイル
ruby
1class HogeSerializer < ActiveModel::Serializer 2 attributes :id, :hogehoge 3 has_one :fugas 4 5 class FugaSerializer < ActiveModel::Serializer 6 attributes :id, :fugafuga 7 has_many :bars 8 9 class BarSerializer < ActiveModel::Serializer 10 attributes :id, :barbar 11 end 12 end 13end
コントローラー
ruby
1@hoge = Hoge.first 2render json: @hoge, include: { fugas: [:bars] }
補足情報(FW/ツールのバージョンなど)
bars
に該当する値は返ってくるため、BarSerializerが認識されていないような気がします。
何か別の指定が必要でしたら教えていただきたいです!
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。