0

名前付き JSON 応答を再構成して、モデル オブジェクト (一部の属性のみ) と、ローカル変数に格納された関連配列を返すようにしようとしていますが、何が間違っているのかわかりません。ローカル変数には間違いなく値が割り当てられていますが、応答で返されていません。

これは私が返したいものの構造です...

{ name: "Dan", email: "email@email.com", id: "1", open_gifts: [ { objects }, { here }] }

@person = Person.find_by_id(params[:id]) をセットアップします。gifts_created_open = Gift.created_gifts_open(@person)

return_object = [@person.name, @person.email, @person.id, gifts_created_open]

これで、詳細を含む JSON オブジェクトが返されますが、配列にラップされています。関連付けられた配列を含む名前付きオブジェクトだけを返そうとしています。

render :json => return_object

これは名前付きオブジェクトを返しますが、配列がありません。何を与える??

render :json => @person.to_json(:gifts_created_open, :only => [:name, :email, :id] )

これに感謝します。私はすでに数時間を費やしました:/

4

1 に答える 1

2

試す:

return_object = {name:@person.name, email:@person.email, id:@person.id, gifts:gifts_created_open}.to_json
于 2013-05-17T04:03:22.680 に答える