2017-08-24 9 views
0

私はRailsが初めてです。 JSON出力をきれいに印刷しようとしています。pretty print JSON Rails

ビューファイルはありません。

メソッドはJSON出力を生成し、コントローラはこのJSONのビューをレンダリングします。

私のようにメソッド内JSON.pretty_generateを追加しました:

JSON.pretty_generate({"files" => list_files}.to_json) 

しかし、これは動作しませんでした。それから私は、次のようなコントローラでレンダリングにそれを追加しました:

方法:

def list_files_json 
    list_files = google_files.map do |o| 
    {title: o.title, id: o.id, size: o.size, created_at: o.created_time} 
    end 
    {"files" => list_files}.to_json 
end 

コントローラ:私は、他のスレッドが関連チェックし、試してみた

def show 
    google_list = DiscourseDownloadFromDrive::DriveDownloader.new(nil).list_files_json 

    respond_to do |format| 
     format.json {render json: JSON.pretty_generate(google_list)} 
     format.html {render html: google_list} 
    end 
    end 

解決策を模倣する(失敗した)。私は何が欠けていますか?

答えて

0

{"files" => list_files}.to_jsonの代わりに{"files" => list_files} を試してみてください。

+0

'JSON.pretty_generate({" files "=> list_files})'私には同じ結果が得られます。あまり出力がありません:/ – catch22

+0

JSONをpretty jsonなしで返し、JSON.pretty_generate(@json_data)をビューファイルで直接使用します。 –

+0

ビューファイルはありません。コントローラーとスクリプトを持つ別のファイル、およびshowアクションのルート。 – catch22