добавление данных в корневой хэш с помощью RABL

#ruby-on-rails #ruby #rabl

#ruby-on-rails #ruby #rabl

Вопрос:

Я хотел бы добавить информацию о запросе к ответу от RABL

мой код выглядит следующим образом

 object @collection => :response
attributes :id, :submitted_at, :address, :name, :data
rest_of_code_omitted
  

Я пытался добавить

 node(:request, :object_root =>true ) do
   {request: {
       url: request.original_url,
       status: 200,
       errors: {
       } }}
 end
  

но этот код добавляет узел запроса к каждому объекту из коллекции, в то время как я хочу, чтобы этот узел отображался один раз над узлом коллекции.
Есть ли какой-либо способ добиться этого?

Ответ №1:

Поехали.

 object false
node :request do
  {
    request: {
      url: request.original_url,
      status: 200,
      errors: { }
    }
  }
end

child(@collection => :response) do
  attributes :id, :submitted_at, :address, :name, :data
end
  

Это должно сработать. object false директива — это то, что переводит узел на корневой уровень.