【问题标题】:What's the best way to store images for a carousel?为轮播存储图像的最佳方式是什么?
【发布时间】:2013-05-09 13:15:40
【问题描述】:

我正在使用 Ruby on Rails。我的目标网页上有两个轮播,我想知道存储和显示这些图片的最佳方式是什么:

选项一

将图像放入assets/images 并在轮播中显示。如果这是一个好方法,我可以循环浏览文件夹中的图像还是必须指定每个文件?

选项二

创建一个带有图像列的模型并遍历具有某些特定属性的图像?

其他三个

其他的

谢谢!

【问题讨论】:

  • 就我个人而言,我讨厌在数据库中保存文本或文件,因为您不能在需要时只使用grep
  • 你有什么建议?
  • 把你的图片放在一个像接受的答案一样的文件夹中:-)

标签: ruby-on-rails


【解决方案1】:

我建议您不要将它们直接放在assets/images 目录中,因为您可能会在某些时候将特定于应用程序的图像添加到应用程序中,而您不希望在轮播中出现这些图像。例如,app/assets/images/carousel 之类的文件夹可让您更轻松地确定哪些图像属于轮播。

在您的控制器中,添加如下内容:

@images = Dir.glob("app/assets/images/carousel/*.{gif,jpg,png}")

然后,在您看来,您可以添加如下内容(假设 ERB)

<% @images.each do |image| %>
   <%= image_tag "carousel/#{image.split('/').last}" %>
<% end %>

【讨论】:

  • 您应该添加文件扩展名,否则它将读取非图像文件(如 .gitkeep 文件):Dir.glob("app/assets/images/carousel/*.jpg")
猜你喜欢
  • 2013-05-23
  • 2019-09-21
  • 2012-11-17
  • 2011-08-09
  • 2012-04-06
  • 1970-01-01
  • 2013-06-14
  • 2019-06-26
  • 1970-01-01
相关资源
最近更新 更多