2015-04-29 7 views
1

Я пытаюсь использовать include моего ответа JSON, который прекрасно работает, но когда я начинаю гнездо его, я получаю странный результатRails Уплотненный JSON Включить

include не возвращает gym объект. Если я перевернул заказ и поместил trainer последним, этот объект не будет возвращен.

У меня что-то отсутствует с синтаксисом?

msg = {:requests => @customer_sessions.as_json(:include => [:session_coupon, :trainer => {:methods => [:rating, :completed_sessions_length, :following]}, :gym => {:methods => :rating}])} 
format.json { render :json => msg } 
+1

быстрой идеи, попробуйте хэш вместо массива на: включить. EG: ': include => {: one,: two,: three}' – Rots

+0

@Rots Я не думаю, что это работает, но я понимаю вашу идею. Хешам нужна пара ключевых значений? – DaynaJuliana

+1

Да, это так. Было больше похоже на это ': include {: trainer => {: methods => [: rating,: completed_sessions_length,: follow]},: gym => {: methods =>: rating}}' – Rots

ответ

1

Сложение хешей работал для тех, кто интересуется

msg = {:status => "SUCCESS", :messages => "Requests Found", :requests => @customer_sessions.as_json(:include => [:session_coupon, {:trainer => {:methods => [:rating, :completed_sessions_length, :following]}}, {:gym => {:method => :rating}}])} 
format.json { render :json => msg } # don't do msg.to_json