如果我使用node()方法在RABL中創建子節點,如何控制呈現的屬性?RABL - 子節點內的屬性
的JSON輸出是這樣的:
[
{
"location": {
"latitude": 33333,
"longitude": 44444,
"address": "xxxxxxx",
"title": "yyyy",
"url": "http://www.google.com",
"rate": {
"created_at": "2012-09-02T11:13:13Z",
"id": 1,
"location_id": 1,
"pair": "zzzzzz",
"updated_at": "2012-09-02T12:55:28Z",
"value": 1.5643
}
}
}
]
我想擺脫created_at,的updated_at和LOCATION_ID屬性。
我有這在我的視圖文件:
collection @locations
attributes :latitude, :longitude, :address, :title, :url
node (:rate) do
|location| location.rates.where(:pair => @pair).first
end
我嘗試使用的部分和「延長」的方法,但它完全搞砸的事情了。此外,我嘗試添加屬性的塊,但它不起作用(輸出是在屬性中指定,但它沒有顯示每個屬性的值)。
謝謝!
謝謝...我最終用'手動'解決方案。在視圖中執行此邏輯的原因是,我必須通過每個位置對象並查找速率,然後輸出兩者。我試圖想到在控制器中這樣做,但它似乎太複雜了(我想這將涉及創建一些新的對象來保存每個位置和相應的費率)..所以我決定爲了簡單在視圖中執行它 – Imme22009