그래서, 이미지 데이터베이스를 내 MySQL 데이터베이스에 가져 왔지만 (필드에 큰 16 진수가 있음) 어떻게해야하는지에 대한 문서를 찾을 수 없습니다. 레일 환경에서 이미지를 표시합니다 ... 인쇄 할 때 GIF89 ...로 시작한 다음 메모장에서 열면 GIF에서 보이는 gobbledygook 문자로 시작합니다. : P 모든 단서는 크게 감사하겠습니다!레일 : 데이터베이스의 blob 필드에서 이미지 표시
감사합니다.
그래서, 이미지 데이터베이스를 내 MySQL 데이터베이스에 가져 왔지만 (필드에 큰 16 진수가 있음) 어떻게해야하는지에 대한 문서를 찾을 수 없습니다. 레일 환경에서 이미지를 표시합니다 ... 인쇄 할 때 GIF89 ...로 시작한 다음 메모장에서 열면 GIF에서 보이는 gobbledygook 문자로 시작합니다. : P 모든 단서는 크게 감사하겠습니다!레일 : 데이터베이스의 blob 필드에서 이미지 표시
감사합니다.
다음 코드가 작동합니다. 보기에
def show_image
@user = User.find(params[:id])
send_data @user.image, :type => 'image/png',:disposition => 'inline'
end
: 컨트롤러에서 방법을 만들
<%= image_tag url_for(:controller => "mycontroller", :action => "show_image", :id => @user.id) %>
내가 종이 클립 보석을 사용하는 것이 좋습니다 것입니다. 이미지 저장 /보기가 정말 쉽습니다.
파일 route.rb당신이 "신속하고 더러운"언급하기 때문에
resources :users do
get 'show_image', :on => :collection
end
또는
get users/show_image" => "users#show_image"
전에 추가해야합니다 대안으로 던져 버릴거야.
<%= ('<img src="data:image/jpg;base64,%s">' % Base64.encode64(@the_data)).html_safe %>
나는 이것이 당신이하고 싶은 것에 가장 가깝다고 생각합니다. 이 코드를 그대로 사용해서는 안되는 몇 가지 이유가 있지만 간단합니다. 아이디어의 나쁜 점은 html_safe로 모든 것을 표시하는 것입니다. 또한 이것은 이전 버전의 IE에서는 작동하지 않습니다.
감사합니다. 작동합니다. 클립은 내가 궁극적으로가는 길일 것입니다,하지만 데모 목적을 위해 빠르고 더러운 해결책이 필요했습니다. – wulftone
@wulftone. 기꺼이 도움이 될 것입니다. – Raunak