検索結果は取得できているのですが、ページネーションを表示するための、
合計商品数が取得できません。
gemはkaminariを使用しています。
ご存知の方おられましたら、よろしくお願い致します。
books.controller
def new require 'rakuten_web_service' array = ['重松清'] #,'宮部みゆき','池井戸潤' randauthor = array[rand(array.length)] if params[:title].present? && params[:author].present? books = RakutenWebService::Books::Book.search(title: params[:title],author: params[:author]) elsif params[:title].present? books = RakutenWebService::Books::Book.search(title: params[:title]) elsif params[:author].present? books = RakutenWebService::Books::Book.search(author: params[:author]) else books = RakutenWebService::Books::Book.search(author: randauthor) end @books = [] books.each do |item| book = Book.find_or_initialize_by(isbn: item['isbn']) #アイテムにユニークなコードで探索 book.title = item['title'] #アイテムタイトル book.author = item['author'] #アイテムタイトル book.image_url = item['largeImageUrl'] book.publishername = item['publisherName'] @books << book end end
new.html.slim
.search = form_with url: new_book_path,method: :get,local: true do |f| = f.text_field :title, placeholder: "タイトルを入力", class: 'form-control' = f.text_field :author, placeholder: "作者で検索", class: 'form-control' .btn-parent = f.submit "書籍を検索", class: "btn btn-primary" -if @books.present? = render 'book', books: @books
試したこと
テストデータで検索した際に、countと書かれているところが取得できればいいのはわかるのですが、取得方法がわかりません。
上記コントローラーでbooksを取得後、デバッグでbooks.countと入れてはみたのですが、
1ページあたりの表示件数である30が返ってしまいました。
https://app.rakuten.co.jp/services/api/BooksBook/Search/20170404?format=json&author=%E9%87%8D%E6%9D%BE%E6%B8%85&booksGenreId=001004008&applicationId=1053124204230443746
検索結果のデータは取得、テンプレートにきちんと表示されているのでしょうか?
回答2件
あなたの回答
tips
プレビュー