很難搞清楚,如果你的意思是你有HTML模板,如HAML或ERB,或真正的HTML文件。如果你試圖操縱HTML文件,你應該使用引入nokogiri來解析和改變src
參數:
require 'nokogiri'
require 'uri'
html = '<html><body><img src="/path/to/image1.jpg"><img src="/path/to/image2.jpg"></body></html>'
doc = Nokogiri.HTML(html)
doc.search('img[src]').each do |img|
img['src'] = URI.join('http://localhost:3000', img['src']).to_s
end
puts doc.to_html
,輸出:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body>
<img src="http://localhost:3000/path/to/image1.jpg"><img src="http://localhost:3000/path/to/image2.jpg">
</body></html>
你可以做的src
參數各種方式操縱,但是使用URI的好處是,它知道URL需要遵循的各種曲折和變化。使用gsub
重寫參數或文本操作需要您注意所有這些,並且意外的編碼問題可能會蔓延。
請檢查http://stackoverflow.com/questions/6500025/how-doi-i-一個絕對的網址爲資產in-rails-3-1 – Galen 2013-05-13 15:11:49
目前尚不清楚你想要什麼。 HTML文件是HTML模板還是真正的HTML文件,您需要解析和轉換'src'參數? – 2013-05-13 15:30:39