ruby-on-rails - Ruby on Rails : Displaying images at random

标签 ruby-on-rails image conditional-statements

我正在尝试根据与“价格”相关的 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/

相关文章:

ruby-on-rails - 怎么叫沉默!在 dalli cache_store 上?

ruby-on-rails - 有条件地从 rails 表单中排除字段

delphi - 检测文件压缩

java - IntelliJ - 当 i 已知时,不会出现条件 i >= 2 的警告消息

python - 带有选择选项的条件 argparse

ios - Swift iOS - 如果发现错误则尽早跳出状态

MySQL - 根据周/月数字获取 sum()

ruby-on-rails - rails : create Parent, 如果不存在,同时创建子记录

html - css 和图像 Sprite

image - 黑白棋盘图案加红色圆圈