我正在尝试将png图像显示在数据库中以二进制格式保存的屏幕上。这是我当前的尝试和失败消息。
def index
@failed_images = FailedImage.order(created_at: :desc).page(params[:page])
end
<% @failed_images.each do |image| %>
<%= image.md5 %>
<%= image.data.encode!('UTF-8') %>
<% end %>
ActionView::Template::Error:
"\xEF" from ASCII-8BIT to UTF-8
基本上我只想在屏幕上以我可以定义的尺寸显示图像。我之前从未这样做过,所以任何帮助都会很棒!
答案 0 :(得分:0)
UTF-8是一种文本编码,因此将它用于图像数据没有意义。相反,您应该使用img
标记内的data URI scheme。像这样:
<%= image_tag "data:image/png;base64,#{Base64.encode64(image.data).gsub("\n", "")}" %>