如何在每个视图中显示数百个图像

时间:2014-05-14 20:36:00

标签: ruby-on-rails image asset-pipeline

我是Rails的新手,遇到了一些麻烦。我有一个flashcard应用程序,想要一些关于设计的建议。现在,用户根据主题选择抽认卡;可以从数据库中选择数百个。此控制器操作创建一个实例变量@show_flashcards,它是抽认卡的大型活动记录数组。用户被重定向到具有由键盘控制的滑块的视图页面,并且@show_flashcards阵列中的每个闪卡一次显示一个,由

访问
<% @show_flashcards.each do |flashcard| %>  
  <div class="front">
    <%= image_tag "#{flashcard.front}" %> 
    ...
    <% end %>

flascard.front访问数据库中的字符串,该字符串告诉视图在资产管道中获取图像的位置。

问题是所有这些图像都会立即加载,从而减慢了应用程序的速度。我不知道如何解决这个问题。也许应该一次装20个左右?有关如何实施此解决方案或更好解决方案的任何建议或指导?谢谢!

1 个答案:

答案 0 :(得分:0)

这与Rails没什么关系,是浏览器提取图像。

你应该看一些延迟加载图片的javascript插件,比如 http://www.appelsiini.net/projects/lazyload