我想对我的web应用程序页面进行分页。但通常在第一页获取前10行,在第二页获取10-20行对我来说并不是一个明智的决定,因为我的数据只是文本,变化很大。一行只能是10字节长,另一行是100kb。因此,我希望根据应用程序页面的大小对其进行分页。例如,当页面达到300kb时,我希望HAML注意到它并刷新网站。
问题是,有没有一个变量或函数可以让我在生成页面时检查生成的页面大小?
发布于 2012-06-19 07:38:27
当您从数据库中提取数据时,只需对您输出的数据量进行统计:
@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。
https://stackoverflow.com/questions/11091090
复制相似问题