json.shixuns_count @total_count json.shixun_list do json.array! @shixuns.with_highlights(multiple: true) do |obj, highlights| puts obj json.merge! obj.to_searchable_json json.challenge_names obj.challenges.pluck(:subject) json.title highlights.delete(:name)&.join('...') || obj.searchable_title # json.description highlights.values[0,5].each { |arr| arr.is_a?(Array) ? arr.join('...') : arr }.join('
') json.content highlights json.level level_to_s(obj.trainee) json.subjects obj.subjects.uniq do |subject| json.(subject, :id, :name) end end end