0
我有一個GET請求,從CSV中加載數千行。我將所有行從它中取出並將其轉換爲散列。如何在Ruby中將分頁添加到JSON中?
,看起來像這樣def index
rows = []
CSV.foreach('test.csv', headers: true) do |row|
rows << row.to_hash
json_data = rows.to_json #converts all of the rows to JSON data
@users = json_data
end
我可以顯示在此DOM JSON數據
我的GET請求的方法,然而這需要很長的時間來加載。我試過了will_paginate gem,默認每頁25個條目。這工作正常,但它仍然一次加載分頁標題的所有數據。
那麼,我該如何做到這一點,以便它只爲第一頁加載25行json,然後當我選擇頁面2時,它會加載下一個25,等等,直到我瀏覽完所有數據?
欣賞你的任何幫助的Ruby/JSON奇才那裏
謝謝!我會試一試。 現在會一次加載我所有的數據嗎?或者它會只加載前25行,然後再選擇第25頁時加載25行?因此,不殺我的服務器試圖加載一切 – menix
確定那種工作。它確實會返回我的數據的分頁。但它一次打完電話!我只是想讓它打響前25行。而已。然後,我點擊下一步後,它會撥打電話並獲取下25行。 人們如何處理大量數據?如果您正在閱讀包含成千上萬行的查詢,那麼您如何一次只獲取一個部分而不是等待所有數據被返回? – menix
您正在使用的CSV庫有其他方法可以讓您獲得恰到好處的行數。但是,您必須根據當前頁面計算出哪條線開始。公式爲:'(page - 1)* per + 1' – DiegoSalazar