2

誰かが私が「アイテム」内の「アイテム」要素を取り除くのを手伝ってくれるでしょうか

出力は次のようになります。
"list":{ "items":[ { { data1: "test" } , { data2: "test2" } } }

collection @list

child :items => :items do
  attributes :place_id
end

child :items do
  child :place do |place|
    extends 'places/place', object: place
  end
end

現在の出力:
"list":{ "items":[{ "item":{data1: "test"} "item":{ data2: "test2"}}}

4

3 に答える 3

8

私も同じ問題を抱えていましたが、これが解決策でした。rablを構成するための名前のファイルを作成する必要がある場合があります。
config / initializers / rabl.config.rb

Rabl.configure do |config|
    config.include_json_root = true
    config.include_child_root =  false
end
于 2012-11-05T07:55:40.823 に答える
1

古い質問、将来のユーザーの参照用:

ファイルrabl_init.rbを起動し、ルートをオフconfig.include_json_root = falseにします。コレクションオブジェクトにルートが必要な場合は、次のように使用します。

collection @orders, :object_root=>"order"
    extends "api/v1/orders/show"
# End of @orders
于 2012-05-25T13:45:32.477 に答える
0

子ノードのルート要素を削除するための実用的なソリューションがあります: RABL の子ルート ノードの削除

を設定するconfig.include_json_root = falseと、JSON の最初のレベルのルートのみが削除されるようです。

于 2012-06-28T03:51:19.930 に答える