2012-12-29 46 views
5

我正在尋找如何使用JBuilder創建嵌套JSON輸出的示例。使用JBuilder在rails中創建嵌套JSON輸出

我想創建和類似的輸出:

{ 
    "name": "John Doe", 
    "reservations": [ 
     { 
      "restaurant": "ABC", 
      "reservation_time": "2012/12/01 20:00", 
      "details": { 
       "address": "somewhere", 
       "rating": "5" 
      } 
     }, 
     { 
      "restaurant": "CDE", 
      "reservation_time": "2012/12/04 20:00", 
      "details": { 
       "address": "somewhere else", 
       "rating": "3" 
      } 
     } 
    ] 
} 

回答

11

解決:

json.name user.name 

json.array!(@reservations) do |json, reservation| 
    json.restaurant reservation.restaurant.name 
    json.reservation_time reservation.time 

    json.details do 
     json.address reservation.restaurant.address 
     json.rating reservation.restaurant.rating 
    end 
end 
+4

這似乎是有很多與此重複的代碼假設你也可以查看單個預訂。 –