2
自定義搜索API我有這樣的方法把來自谷歌定製搜索API的10個結果的鏈接到一個數組:谷歌與分頁
require 'json'
require 'open-uri'
def create
search = params[:search][:search]
base_url = "https://www.googleapis.com/customsearch/v1?"
stream = open("#{base_url}key=XXXXXXXXXXXXX&cx=XXXXXXXXXX&q=#{search}&start=#{i}&alt=json")
raise 'web service error' if (stream.status.first != '200')
result = JSON.parse(stream.read)
@new = []
result['items'].each do |r|
@new << r['link']
end
end
和我的觀點:
<% @new.each do |link| %>
<p><%= link %></p>
<% end %>
我無法找出如何添加分頁符以便在第二頁上返回下10個結果。我使用Kaminari寶石作爲分頁。
我希望當用戶點擊鏈接到另一個頁面時,我會從Google的API中獲取下一個10個結果。您可以使用API的start
參數來指定第一個結果,我將其作爲i
傳遞給第一個結果。我想這樣做是這樣的:
i = (params[:page] - 1) * 10 + 1
其中params[:page]
是當前頁碼,但由於某些原因,它是不確定的。此外,我不確定如何爲不是AR對象的數組設置分頁,以及我認爲會發生什麼。我會很感激任何幫助,並隨時使用您認識的任何分頁寶石。