【发布时间】:2014-05-01 11:11:57
【问题描述】:
在我的应用程序中,我在主页上显示了一系列图像。这些图片大小相同,命名为 new1.jpg - new17.jpg,存储在 /public/images/rotate
我正在使用一些在网上找到的代码来显示随机选择的图像。这是我正在使用的:
def random_image
image_files = %w( .jpg .gif .png )
files = Dir.entries(
"#{Rails.root}/public/images/rotate"
).delete_if { |x| !image_files.index(x[-4,4]) }
files[rand(files.length)]
end
然后在我的部分:
<img src="/images/rotate/<%= random_image %>"/>
当我在 web 上将代码推送到我的服务器上时,这可以完美地在我的 mac 上本地运行,加载一半的图像,而另一半(数字似乎发生变化)显示损坏的图像。
查看源代码时,所有工作的图像都在看/public/images/rotate/new1.jpg等,所有损坏的图像都在看/public/images/rotate/._new10.jpg等
它们的文件名前都有一个'._'。
谁能帮我解释一下?
非常感谢
李
【问题讨论】:
-
文件夹中是否有任何隐藏的图像,带有'。'前缀?
-
@Iceman 是的,当我查看服务器并运行 ls -a 时,我可以看到每个文件都有一个以 ._example.jpg 开头的隐藏文件,并且我的代码会查找 all.jpgs它也在尝试显示这些图像。如何将隐藏文件列入黑名单或防止这种情况发生?
标签: ruby-on-rails image asset-pipeline imagesource