0
我使用Carrierwave将图像上传到s3上免费的Heroku测功机(虽然这也发生在本地)。我显示图像的页面将它们加载为CSS背景图像(内联CSS样式)。s3上的图像需要刷新页面才能加载
我的问题是,图像不会加载,直到我刷新页面。然后,如果我访问同一模型中的另一个图像,它会加载看起来是以前缓存的图像。
下面是相关的代码:
image.rb
class Image < ActiveRecord::Base
mount_uploader :image, ImageUploader
end
image_controller.rb
class ImagesController < ApplicationController
# using a different layout for the show action
layout :resolve_layout
def show
@image = Image.find(params[:id])
# set variables for image width and height
img = Magick::Image::read(@image.image_url.to_s).first
@width = img.columns
@height = img.rows
end
private
def resolve_layout
case action_name
when 'show'
'image'
else
'application'
end
end
end
show.html.erb
<div style="background: url('<%= @image.image_url.to_s %>');"></div>
Chrome的网络监视器第一次点击时不显示任何内容。有任何想法吗?