2011-11-22 20 views
0

在Rails模型中,我該如何檢查相同Rails服務器上的URL是否存在?在Rails模型中檢查相同Rails服務器上的URL是否存在

我使用的蜻蜓,我試圖從作爲/media/BAhbBlsHOgZmIikyMDExLzExLzIxLzEwXzNxXzQyXzI5NF9Wb3NraG9kMi5qcGc

FileTest.exists這樣的路徑檢查圖像的存在?將無法工作,因爲我沒有文件路徑,我無法打開URL,因爲我沒有服務器主機名。

回答

0

您可以從控制器獲取主機名。

request.host 
request.host_with_port 
+0

謝謝我可以將控制器的主機作爲參數傳遞給模型方法。但是我發現這不起作用,因爲服務器會掛起並超時。 – Sheldno

+0

是的,我在開發中,謝謝,它在我的生產服務器上運行。但是由於緩存在服務器上,這並不能準確地告訴我圖像是否存在,所以我需要想出其他的東西來解決這個問題。 – Sheldno

+0

難道你不能通過添加一些虛擬查詢參數來繞過緩存:/ media/BAhbBlsHOgZmIikyMDExLzExLzIxLzEwXzNxXzQyXzI5NF9Wb3NraG9kMi5qcGc?no_cache = 1 –

0

您是否嘗試過使用RAILS_ROOT

FileTest.exists?("#{RAILS_ROOT}/public/#{filename}") 
+0

謝謝,但這樣是行不通的,因爲它需要的服務器,我沒有對實際文件的路徑(見原帖)。 – Sheldno

相關問題