2014-05-03 6 views
1

Недавно я столкнулся с состоянием, когда я хотел отправить два объекта в RABL в качестве ответа.Render RABL шаблон с двумя объектами

[ 
{ 
    id: "1", 
    name: "XYZ" 
}, 
{ 
    id: "1", 
    name: "XYZ" 
}, 
{ 
    total: "2" 
} 
] 

Все, что я мог сделать, было это, что неверно.

[ 
{ 
    id: "1", 
    name: "XYZ", 
    total: "2" 
}, 
{ 
    id: "1", 
    name: "XYZ", 
    total: "2" 
} 
] 

Я нашел решение, которое должен был использовать частичный итерировать на объекте и просто добавить новый

node(:name) {partial("users/names", :object => @users)} 
node(:total){ @total} 

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

+0

добавить код действия в вопросе. – Dave

ответ

1

В файле RABL попробуйте следующее:

child @users, object_root: false do 
    attributes :id, :name 
end 
node(:total) { @users.size } 
Смежные вопросы