Rails - Сериализация коллекции с дополнительным полем - PullRequest
0 голосов
/ 21 октября 2019

Я использую 'active_model_serializers' в качестве механизма сериализации. К настоящему времени по индексу метод возвращает массив или ордера. render json: @orders, each_serializer: Web::OrderSerializer. Теперь я хочу добавить дополнительное поле рядом с массивом. Это количество заказов. В результате я хочу что-то вроде:

{
  "order_quantity": 12,
  "orders": [(serialized collection here)]
}

Как мне кодировать это с использованием синтаксиса Active Model Serializer?

1 Ответ

0 голосов
/ 29 октября 2019

Вы можете использовать #map здесь, чтобы получить сериализованную стоимость каждого заказа.

render json: { 
  orders: @orders.map{|order| Web::OrderSerializer.new(order).attributes},
  order_quantity: @orders.count // 12
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...