2012-06-26 1 views
0

새로운에서 JSON으로 데이터 출력의 조각하지 않은 방법 : 내 rabl 파일에서두 개의 서로 다른 배열이 같은 하나의 해시 반환이 작업을 수행하는 방법을 잘 두 rabl에 rabl

@data={:locations => [location1, location2], :items => [item1,item2]} 

을, I 출력이에

@data[:locations] 
extends "api/location_show" 
@data[:items] 
extends "api/item_show" 

: '다음과 같은 일을하고 싶습니다

{ 
    "locations": [ 
     { 
      "id": 156, 
      "name": "Location 1" 
     }, 
     { 
      "id": 158, 
      "name": "Location 2" 
     } 
    ], 
    "items": [ 
     { 
      "global_id": 3189, 
      "header": "pistachio 1" 
     }, 
     { 
      "global_id": 3189, 
      "header": "pistachio 2" 
     } 
    ] 
} 

하지만 그것은 단지 일하는하지 않는 것 지. 이 방법을 사용할 수 있습니까?

들으

답변

1

귀하의 rabl 파일과 같이 보일 것입니다 : false로 객체를 설정하여

object false 
child (:locations) { attributes :id, :name } 
child (:items) { attributes :global_id, :header } 

을, 당신은 기본적으로 당신이 당신의 자신에 노드를 구성 할 rabl을 말한다. 그런 다음 원하는대로 하위 및 노드 메소드를 호출 할 수 있습니다.