有没有办法用HTML / RUBY跟踪生成的页面大小

时间:2012-06-18 21:10:02

标签: ruby haml

我想分页我的网络应用程序页面。但通常在第一页上获得前10行,在第二页上获得10-20对我来说不是一个明智的决定,因为我的数据只是文本而且变化很大。一行可以只有10个字节长的白色另一个100kb长。所以我想按照它们的大小对我的应用程序页面进行分页。例如,当一个页面达到300kb时,我希望HAML注意到它并刷新网站。

问题是,是否有一个变量或函数可以在生成页面时检查生成的页面大小?

1 个答案:

答案 0 :(得分: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