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
가 나는 부분과 '확장'방법을 사용했지만, 그것은 완전히 일을 망쳐 :
내보기 파일이 있습니다. 또한 블록에 속성을 추가하려고 시도했지만 작동하지 않았습니다. 출력은 속성에 지정된대로 수행되었지만 각 속성의 값은 표시되지 않았습니다.
감사합니다.
고마워 ... 나는 결국 '수동'해결책을 가지고 갔다. 뷰에서이 논리를 수행하는 이유는 각 Location 객체를 검토하고 속도를 조회 한 다음 두 가지를 모두 출력해야한다는 것입니다. 컨트롤러에서이 작업을 수행하려고 생각했지만 너무 복잡한 것처럼 보였습니다 (각 위치 및 해당 요금을 유지할 수있는 새로운 객체를 만드는 것이 포함될 것 같음). 그래서보기를 단순하게하기로 결정했습니다. – Imme22009