我正在使用以下代碼在我的erb文件中發佈圖像之前檢查文件的存在。這是一個ruby/sinatra應用程序 - 不是rails。Sinatra視圖內的相對路徑問題
<% @imagename = @place.name + ".jpg" %>
<% if FileTest.exist?("/Users/Tim/projects/game/public/" + @imagename) %>
<p><img src= '<%= @imagename %>' width="400" height="300" /> </p>
<% end %>
而當我發佈到Heroku,它顯然不會工作。
我嘗試使用相對路徑,但我無法得到它的工作:
<% if FileTest.exist?("/" + @imagename) %>
我如何在Sinatra做到這一點? – 2010-05-11 21:08:04
已更新爲上面的Sinatra。讓我知道這是否有幫助。 – mikej 2010-05-11 21:25:58
這種方法的工作原理如下: 「然後嘗試從這個文件夾到圖像的相對路徑,例如,如果應用程序從/ Users/Tim/projects/game運行,那麼公共的相對路徑是公共的,因此圖像的路徑會是File.join('public',@imagename)「 APP_ROOT方法遊戲我一個統一的常量錯誤。工作中。謝謝MikeJ! – 2010-05-11 21:46:42