我在这里找到了一些关于 File.exists 的帖子?在 Rails 应用程序中,但尝试解决方案没有帮助,我相当新,所以我必须做一些愚蠢的事情。
我正在使用:
- 导轨 3.2.11
- 红宝石 1.9.3
- 下面提到的文件的回形针
- ActiveAdmin 上传下面提到的文件
- 在开发环境中工作
- 未预编译的资产
我有一个模型“样式”,它有一个图像附件,我可以用
<%= image_tag(@style.style_image) %>
它工作得很好。
简而言之,我想检查文件图像是否真的存在于它应该在的文件夹中 - 我不想使用@style.style_image.present?用于检查图像,因为那只是检查数据库记录。我想使用File.exist?看看是否真的有@style.style_image的文件。
所以在我的视图文件中,我有代码
<% if File.exist?(@style.style_image.url) %>
The image exists.
<% else %>
The image is not here.
<% end %>
当我加载页面时,它总是打印“图像不在这里”。在正下方,我正在使用 image_tag 显示我的图像,所以我知道图像就在那里。
我也试过
<% if File.exist?(Rails.root + @style.style_image.url) %>
没有运气。我还尝试使用 FileTest.exist?、FileTest.exists? 和 File.exists? 但是当图像肯定存在时,没有人会告诉我真实的。
有什么我想念的吗?任何指导将不胜感激。我只接触 Ruby 和 Rails 几个月,所以我可能遗漏了一些愚蠢的东西。