i’m storing images in database.
i have this action in controller:
def image
begin
item = StoredItem.find(:first, :conditions => {:id =>
params[:id]})
rescue
return
end
return if item.nil?
if item.image_binary.nil?
render :nothing => true
else
send_data(item.image_binary, :type => item.image_datatype,
:disposition => ‘inline’) unless item.image_binary.nil?
end
end
and i have this code in view:
<%items.each do |item|%>
…
<%=image_tag(url_for(:action => :image, :id => item.id), :alt =>
item.name+’ image’, :size => ‘24x24’)%>
…
<%end>
everything works fine except that i have separate SELECT queries to
database on EACH loading image.
in view i’m iterating collection of “items”, so i have all neccessary
data and i don’t want to select it from database again. Is there any way
to use “send_data” directly from image_tag or something similar?