【发布时间】:2013-07-25 01:53:48
【问题描述】:
我有以下上传器:
class HeroUploader < CarrierWave::Uploader::Base
# Include RMagick or MiniMagick support:
include CarrierWave::RMagick
#include CarrierWave::MiniMagick
# Include the Sprockets helpers for Rails 3.1+ asset pipeline compatibility:
include Sprockets::Helpers::RailsHelper
include Sprockets::Helpers::IsolatedHelper
storage :fog
这是模型:
class Homepage < ActiveRecord::Base
attr_accessible :banner, :banner_text1, :banner_text2, :banner_text3, :button, :hero
mount_uploader :hero, HeroUploader
mount_uploader :banner, BannerUploader
mount_uploader :button, ButtonUploader
end
当我尝试在视图上调用 Hero Image 时,我得到: amazons3.hat_beach.jpg:HeroUploader 调用私有方法“格式”
横幅和按钮也是如此。我在同一个 Rails 应用中确实有另一个上传者。
关于如何解决这个问题的任何想法?
谢谢!
山姆
编辑以添加视图:
<body>
<div class="row-fluid" style="padding-top: 100px; padding-bottom: 30px;">
<div id="myCarousel" class="carousel slide" data-interval="30" >
<!-- Carousel items -->
<div class="carousel-inner">
<div class="item">
<div class="row-fluid">
<div class="span12">
<div class="row-fluid">
<div class="span6 offset1" >
<a align="center" href="http://pinterest.com/newoutfitpr/" target="_blank"> <%= image_tag @homepages.first.hero, class: "hero-image-size" %> </a>
</div>
<div class="span4">
<h3 align="center"><%= image_tag @homepages.first.banner %></h3>
<p class="product-description"><%= @homepages.first.banner_text1 %> </p>
<p class="product-description"><%= @homepages.first.banner_text2 %></p>
<p class="product-description"><%= @homepages.first.banner_text3 %></p>
<p align="center">
<%= link_to guest_collage_path, :method => :post do %>
<%= image_tag(@homepages.first.button, :alt => "Get Started") %>
<% end %></p>
</div>
</div>
</div>
</div>
</div>
【问题讨论】:
-
@samanthaCabel 你在哪里改变图片的格式吗?你检查上传的图片是否存储在 s3 存储桶中?
-
我正在调用一些 css 来更改图像的大小,但是我在没有 css 类的情况下尝试了它,并且得到了相同的错误消息。是的,图片已经上传到 S3 - 我可以在那里看到它。
-
所有上传类中是否只有4行代码?你能在你试图显示这张图片的地方显示一些视图代码吗?
-
添加了视图 - 上传者应该很简单,对吧?我正在使用carrierwave的标准上传器。
标签: ruby-on-rails ruby amazon-s3 carrierwave