在 rabl 中,我试图让一个孩子的元素是有条件的,但在条件评估为 false 的情况下,它仍然在渲染没有属性的元素。
这是我的.rabl:
child(:products) do
attribute :id, :if => lambda{ |p| p.store_id == @store.id }
end
希望 .json 看起来像这样:
"products":[{"id":2}]
但它也呈现空值:
"products":[{}, {"id":2}, {}]
有没有办法让空元素被完全忽略?