association先もシリアライズする

Pocket
LinkedIn にシェア
LINEで送る
Facebook にシェア

Railsでmodelを利用する際にassociation先もシリアライズしたい場合の方法メモ

class CodeMaster < ApplicationRecord
  has_many :code_values

  def as_json options = {}
    super include: :code_values
  end
end
class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception
  before_action :get_menus

  def get_codes
    @codes = CodeMaster.all
  end
end

「as_json」を使ってシリアライズ化する際にassociation先も含める
ただ、親レコード件数文selectが走るので使いどころに注意かも?