2017-05-29 10 views
1

jsonで複数のネストされたオブジェクトをレンダリングしようとするといくつかの問題があります。Ruby on Rails 5.0.2 - 複数ネストされたJsonレンダリング

はここでこれが働くまで私のスクリプト

def getFullSale 
     sale = Sale.find(params[:id]) 
     render json: sale, include: [:discount_sale, :offer_sale, :mixed_payment, :product_sale => {:include => {:product_history => {include: :product}}}, :refunds => {include: :refund_products}] 
end 

です:product_sale、しかし何が後に無視されます。

私が必要とするのは、product_saleと:refestedにネストされたプロパティを含めることです。

ありがとうございます!

答えて

1

を変更してみました! Here

溶液中

クレジットは含まの配列を交換し、オブジェクトのようにそれを作ることでした。

def getFullSale 
    sale = Sale.find(params[:id]) 
    render json: sale, include: {discount_sale: {}, offer_sale: {}, mixed_payment: {}, :product_sale => {:include => {:product_history => {include: :product}}}, :refunds => {include: :refund_products}} 
end 

なぜこれが起こっているのか分かりませんが、現在は機能しています。 実際、=>を:に変更することは悪い考えではありません。 と試み

def getFullSale 
    sale = Sale.find(params[:id]) 
    render json: sale, include: {discount_sale: {}, offer_sale: {}, mixed_payment: {}, product_sale: {include: {product_history: {include: :product}}}, refunds: {include: :refund_products}} 
end 
0

多分それは愚かな観測ですが、私はそれを動作させることができたあなたの=>

:
json: sale, include: [:discount_sale, :offer_sale, :mixed_payment, :product_sale : {:include : {:product_history : {include: :product}}}, :refunds : {include: :refund_products}] 
+0

JSONをレンダリングする:販売、含まれる:[:discount_sale:offer_sale:mixed_pa​​yment、product_sale:{含む:{product_history:{含む:製品}}}、払い戻し:{含む:refund_productsを}] しかし、それは同じ応答です=( –

関連する問題