0

我正在对名为位置的表和名为项目的表进行搜索。它们都是短表(2k 项),因此对此查询的性能并不紧张。

我将搜索一个然后另一个,从而将 2 种不同类型的对象作为单个数组返回。有没有办法可以使用 rabl 模板来处理其中任何一种情况。就像是:

collection @locations

@locations.each do |x|
if x.class.to_s=='Location'
  extends "api/location"
elsif x.class.to_s=='Location'
  extends "api/item"
end

谢谢

编辑 #1 试过这个,但不知道这能带给我什么。该数组只是不同对象的列表,不确定展平数组可以实现什么。

collection @b

node(:data) do |m|
  [@locations, @items].flatten
end
4

1 回答 1

0

我玩了一会儿,想出了这个,它应该显示一个 JSON 数组,命名为andarray_name中的所有对象:@locations@items

*.rabl:

node(:array_name) do |m|
  [@locations, @items].flatten
end
于 2012-04-19T19:44:34.687 回答