Rails, Grape создают собственный JSON из коллекции

Я начал учиться пользоваться Grape. У меня есть коллекция с множеством атрибутов, и мне нужны только некоторые из них. Я сделал что-то вроде этого:

get :all_elements do
    [
      my_collection.each do |element|
          {
           id: element.id,
           name: element.name
          }
      end
    ]
end

Однако это не работает. Как я могу создать собственный массив json из коллекции?


person Mr.D    schedule 25.03.2015    source источник
comment
Используйте объект винограда — github.com/intridea/grape-entity для предоставления определенных атрибутов.   -  person Sharvy Ahmed    schedule 25.03.2015


Ответы (1)


Пожалуйста, попробуйте этот код.

list = my_collection.map do |element|
           { :id => element.id,
             :name => element.email
           }
       end

list.to_json
person ROR    schedule 25.03.2015
comment
Он печатает JSON со всеми атрибутами. Я хочу только конкретного. - person Mr.D; 25.03.2015
comment
Я использую карту, поэтому она печатает только детали. - person ROR; 25.03.2015