我正在尝试根据与“价格”相关的 if/else 语句显示一张图像。我的/assets/images 目录中有 5 个文件夹,如下所示:
very_bad
bad
ok
good
very_good
每个文件夹包含多个图像,我只想从适当的文件夹中随机抓取一个图像,因此用户不必总是看到相同的图像。
例如,如果价格低于 -2%,我想随机显示“very_bad”文件夹中的图像。如果价格大于 2%,我想随机显示“very_good”文件夹中的图像。
你会如何解决这个问题?谢谢您的帮助!
最佳答案
确定文件夹名称后(让我们以 very_good
为例),根据您拥有的图像数量确定一个随机数。假设每个文件夹中有四个图像,请使用 rand(4)
得到一个随机数 [0,1,2,3]
.为您的图片命名 0.png
, 1.png
等。现在您应该能够随机显示其中一张图像,给定文件夹名称,如下所示:
<%= image_tag "very_good/#{rand(4)}.png" %>
由于您的文件夹名称可能是动态的,它看起来更像这样:
<%= image_tag "#{@folder_name}/#{rand(4)}.png" %>
关于ruby-on-rails - Ruby on Rails : Displaying images at random,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18642485/