2012-06-18 35 views
0

我想分頁我的Web應用程序頁面。但通常在第一頁獲得前10行,在第二頁獲得10-20行對我來說不是一個明智的決定,因爲我的數據只是文本而且變化很大。一行可以只有10個字節長的白色另一個100kb長。所以我想按他們的大小分頁我的應用程序頁面。例如,當一個頁面點擊300kb時,我希望HAML注意到它並刷新網站。有沒有辦法跟蹤生成的頁面大小與HTML/RUBY

問題是,是否有一個變量或函數,我可以檢查頁面生成時生成的頁面大小?

+0

你真的關心頁面大小,還是隻關心你從數據庫中拉出來顯示在這些行中的文本的總大小? –

+0

好的都將爲我工作,如果我可以從生成頁面時從數據庫中獲取文本大小 – gkaykck

回答

1

當你從數據庫中提取數據,只保留多少數據你輸出的運行計數:

@some_collection.each_with_object(0) do |item, count| 
    count += item.some_text_field.length + item.some_other_text_field.length 
    break if count > 300 
    # Proceed as usual 
end 

注意上面的計算中的字符數,而不是數量字節。如果要計算後者,則可以在每個字符串上調用bytesize而不是length

相關問題