Как отображать изображения в Rails без таких плагинов, как Paper Clip? - PullRequest
1 голос
/ 02 ноября 2009

Я пытаюсь отобразить изображения с помощью моего веб-приложения, написанного на Rails. Я сталкивался с такими решениями, как PaperClip, Attachment Fu и т. Д .; но они изменяют мою модель данных и требуют сохранить изображение через пользовательский интерфейс. Проблема в том, что содержимое изображений хранится не с помощью Rails, а с помощью приложения сервлета Java. Есть ли способ, чтобы просто отображать содержимое BLOB-изображения на моем View.

-Snehal

1 Ответ

2 голосов
/ 02 ноября 2009
class ImagesController < ApplicationController
  caches_page :show
  def show
    if @image = Image.find_by_file_name(params[:file_name])
      send_data(
        @image.file_data, 
        :type => @image.content_type,
        :filename => @image.file_name,
        :disposition => 'inline'
      )
    else
      render :file => "#{RAILS_ROOT}/public/404.html", :status => 404
    end
  end
end

map.connect "/images/*file_name", :controller => "images", :action => "show"

Или что-то в этом роде.

...