我正在使用以下方式保存已删除的图像:
img_url = agent.page.at(".field-content a")[:href]
root_img_url = URI.join(page_url,img_url).to_s
cover = File.basename(root_img_url)
file = File.open(File.join(Rails.root, 'app', 'assets', 'images', cover), 'wb') { |f|
f.write(open(root_img_url).read)
}
某些图片的名称中有%26
,如cover_b%26w_xyz_.jpg
,当我将它们保存在我的数据库中,并希望在我的索引视图中看到它们时,它们不会出现,但是仍保存在assets / images文件夹中。
如何在将文件%26
保存到数据库之前替换cover
字符?
答案 0 :(得分:3)
%26
是由网址编码的&
,因此您可以使用URI.decoded
:
cover = File.basename(URI.decode(root_img_url))
# cover is now 'cover_b&w_xyz_.jpg'