1

Rails アプリから json を生成し、format.json および to_json メソッドを使用してフィールドをフィルタリングしています。json にオブジェクト名がないことを除いて、正常に動作しています。これはRailsコードです:

format.json { render :json =>  @text.to_json(:only =>[:id,:language,:text_name,:text_type,:text_content])}

そしてjson出力の一部:

[{"id":5,"language":"TR","text_name":"2.01 AY\u015eE'DEN MEKTUP","text_type":null},{"id":6,"language":"TR","text_name":"2.02 Ruya","text_type":null},{"id":7.... etc

オブジェクトの名前を示す何かを受け取ると思っていた場所 (例: "texts")。以下の行に沿った詳細:

{"texts:"[{"id":5,"language":"TR","text_name":"2.01 AY\u015eE'DEN MEKTUP","text_type":null},{"id":6,"language":"TR","text_name":"2.02 Ruya","text_type":null},{"id":7.... etc
4

2 に答える 2

4

次のレンダリング行は、探している結果を生成します。

format.json { render :json => { :texts => @text.to_json(:only =>[:id,:language,:text_name,:text_type,:text_content])}}
于 2012-07-06T07:46:53.043 に答える
3

もう 1 つのオプションは、グローバル設定を有効にすることです。

ActiveRecord::Base.include_root_in_json = true
于 2012-07-06T07:52:00.350 に答える