現在Ruby on Railsで検索フォームん入力された情報をもとに、Google books apiから検索結果を表示する機能を実装しています。
まず、以下のようにして検索フォームでのパラメータparams[:search]をもとに、Google books apiから書籍データを取得します
bookscontroller
1def index 2 url = 'https://www.googleapis.com/books/v1/volumes?q=' 3 request = url + params[:search] 4 enc_str = URI.encode(request) 5 uri = URI.parse(enc_str) 6 json = Net::HTTP.get(uri) 7 @books = JSON.parse(json) 8 puts @books 9 end
そして、以下のように2番目の添字に変数を代入して検索結果を一覧表示させいのですが、うまくいきません。(for文を使わずに普通に整数を入れるとここの書籍名が表示できます。)
<div class="search-results col-md-8"> <%for i in 1..5 do%> <%=@books["items"][i]["volumeInfo"]["title"]%> <%end%> </div>
またAPIから取得できるデータは以下の通りです(書籍名がハリーポッターの場合)
APIから取得できるjsonデータ
解決策がわからないので、どなたか分かる方がいればよろしくおねがいします。
また、他に実装法が分かる方がいれば教えていただきたいです。
回答1件
あなたの回答
tips
プレビュー